@noyrax/5d-database-plugin 0.1.14-beta.1 → 0.1.14-beta.11
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/README.md +25 -0
- 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 +32 -1
- package/out/api/bootstrap-api.d.ts.map +1 -1
- package/out/api/bootstrap-api.js +207 -14
- 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 +41 -4
- 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/debug-embedding-strategies.d.ts +3 -0
- package/out/cli/debug-embedding-strategies.d.ts.map +1 -0
- package/out/cli/debug-embedding-strategies.js +255 -0
- package/out/cli/debug-embedding-strategies.js.map +1 -0
- package/out/cli/debug-plugin-id.d.ts +9 -0
- package/out/cli/debug-plugin-id.d.ts.map +1 -0
- package/out/cli/debug-plugin-id.js +188 -0
- package/out/cli/debug-plugin-id.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/chromadb-vector-database.d.ts.map +1 -1
- package/out/core/chromadb-vector-database.js +10 -12
- package/out/core/chromadb-vector-database.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/core/vector-database-factory.js +5 -5
- package/out/core/vector-database-factory.js.map +1 -1
- package/out/core/vss-vector-database.js +8 -8
- package/out/core/vss-vector-database.js.map +1 -1
- package/out/embedding/embedding-pipeline.d.ts +29 -0
- package/out/embedding/embedding-pipeline.d.ts.map +1 -1
- package/out/embedding/embedding-pipeline.js +288 -3
- package/out/embedding/embedding-pipeline.js.map +1 -1
- package/out/embedding/module-summarizer.d.ts +25 -0
- package/out/embedding/module-summarizer.d.ts.map +1 -0
- package/out/embedding/module-summarizer.js +104 -0
- package/out/embedding/module-summarizer.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 +21 -2
- package/out/mcp/tools/gap-analysis.d.ts.map +1 -1
- package/out/mcp/tools/gap-analysis.js +326 -27
- 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 +110 -22
- 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 -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/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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vss-vector-database.js","sourceRoot":"","sources":["../../src/core/vss-vector-database.ts"],"names":[],"mappings":";;;AAIA;;;;GAIG;AACH,MAAa,iBAAiB;IAM1B,YAAY,EAAoB,EAAE,SAAoB;QAH9C,iBAAY,GAAY,KAAK,CAAC;QACrB,wBAAmB,GAAW,IAAI,CAAC;QAGhD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,WAAW;QACP,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU;QACZ,4BAA4B;QAC5B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAEjD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,
|
|
1
|
+
{"version":3,"file":"vss-vector-database.js","sourceRoot":"","sources":["../../src/core/vss-vector-database.ts"],"names":[],"mappings":";;;AAIA;;;;GAIG;AACH,MAAa,iBAAiB;IAM1B,YAAY,EAAoB,EAAE,SAAoB;QAH9C,iBAAY,GAAY,KAAK,CAAC;QACrB,wBAAmB,GAAW,IAAI,CAAC;QAGhD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,WAAW;QACP,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU;QACZ,4BAA4B;QAC5B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAEjD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,iFAAiF;YACjF,OAAO;QACX,CAAC;QAED,IAAI,CAAC;YACD,wCAAwC;YACxC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAEzD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,2BAA2B;gBAC3B,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAChC,gFAAgF;YACpF,CAAC;iBAAM,CAAC;gBACJ,gFAAgF;YACpF,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,QAAQ,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACxE,iFAAiF;YACjF,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC9B,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,uBAAuB;QACjC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,EAAE,CAAC,GAAG,CACP,qFAAqF,EACrF,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACT,IAAI,GAAG,EAAE,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC;gBAC/B,CAAC;YACL,CAAC,CACJ,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB;QAC5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,EAAE,CAAC,GAAG,CACP;uCACuB,IAAI,CAAC,mBAAmB;;kBAE7C,EACF,CAAC,GAAG,EAAE,EAAE;gBACJ,IAAI,GAAG,EAAE,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACJ,OAAO,EAAE,CAAC;gBACd,CAAC;YACL,CAAC,CACJ,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,uBAAuB,CAAC,WAAmB;QACrD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,EAAE,CAAC,GAAG,CACP,2CAA2C,EAC3C,CAAC,WAAW,CAAC,EACb,CAAC,GAAG,EAAE,GAAkC,EAAE,EAAE;gBACxC,IAAI,GAAG,EAAE,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACpC,CAAC;YACL,CAAC,CACJ,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,uBAAuB,CAAC,KAAa;QACvC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,EAAE,CAAC,GAAG,CACP,2CAA2C,EAC3C,CAAC,KAAK,CAAC,EACP,CAAC,GAAG,EAAE,GAA+B,EAAE,EAAE;gBACrC,IAAI,GAAG,EAAE,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACjC,CAAC;YACL,CAAC,CACJ,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc,CAAC,KAAa;QACtC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,EAAE,CAAC,GAAG,CACP,8DAA8D,EAC9D,CAAC,KAAK,CAAC,EACP,CAAC,GAAG,EAAE,GAAkC,EAAE,EAAE;gBACxC,IAAI,GAAG,EAAE,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBACzC,CAAC;YACL,CAAC,CACJ,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAAC,KAAa,EAAE,MAAoB;QAC7D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,mCAAmC;YACnC,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,EAAE,CAAC,GAAG,CACP,mEAAmE,EACnE,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,EACpC,CAAC,GAAG,EAAE,EAAE;gBACJ,IAAI,GAAG,EAAE,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACJ,OAAO,EAAE,CAAC;gBACd,CAAC;YACL,CAAC,CACJ,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAAC,KAAa;QACvC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,EAAE,CAAC,GAAG,CACP,4CAA4C,EAC5C,CAAC,KAAK,CAAC,EACP,CAAC,GAAG,EAAE,EAAE;gBACJ,IAAI,GAAG,EAAE,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACJ,OAAO,EAAE,CAAC;gBACd,CAAC;YACL,CAAC,CACJ,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,eAAwC;QAC/E,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,OAAO;QACX,CAAC;QAED,IAAI,CAAC;YACD,IAAI,MAAoB,CAAC;YACzB,IAAI,eAAe,YAAY,YAAY,EAAE,CAAC;gBAC1C,MAAM,GAAG,eAAe,CAAC;YAC7B,CAAC;iBAAM,IAAI,eAAe,YAAY,MAAM,EAAE,CAAC;gBAC3C,MAAM,GAAG,IAAI,YAAY,CACrB,eAAe,CAAC,MAAM,EACtB,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,MAAM,GAAG,CAAC,CAC7B,CAAC;YACN,CAAC;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;gBACxC,MAAM,GAAG,IAAI,YAAY,CAAC,eAAe,CAAC,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,kCAAkC,OAAO,eAAe,EAAE,CAAC,CAAC;YAChF,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC;YAE9D,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACjB,iFAAiF;gBACjF,OAAO;YACX,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAEhD,IAAI,MAAM,EAAE,CAAC;gBACT,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,QAAQ,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACxE,iFAAiF;QACrF,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACR,cAAuC,EACvC,QAAgB,EAAE,EAClB,SAAuC,EACvC,QAAiB;QAEjB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,iFAAiF;YACjF,OAAO,EAAE,CAAC;QACd,CAAC;QAED,0CAA0C;QAC1C,IAAI,gBAA0B,CAAC;QAC/B,IAAI,cAAc,YAAY,YAAY,EAAE,CAAC;YACzC,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAClD,CAAC;aAAM,IAAI,cAAc,YAAY,MAAM,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,YAAY,CAC5B,cAAc,CAAC,MAAM,EACrB,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,MAAM,GAAG,CAAC,CAC5B,CAAC;YACF,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3C,CAAC;aAAM,CAAC;YACJ,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACnG,CAAC;QAED,sCAAsC;QACtC,mFAAmF;QACnF,kEAAkE;QAClE,MAAM,KAAK,GAAG,mFAAmF,CAAC;QAClG,MAAM,MAAM,GAAU,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC,CAAC;QAEhE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,EAAE,CAAC,GAAG,CACP,KAAK,EACL,MAAM,EACN,CAAC,GAAG,EAAE,IAA2C,EAAE,EAAE;gBACjD,IAAI,GAAG,EAAE,CAAC;oBACN,0CAA0C;oBAC1C,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC;yBAClE,IAAI,CAAC,OAAO,CAAC;yBACb,KAAK,CAAC,MAAM,CAAC,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACJ,8CAA8C;oBAC9C,sDAAsD;oBACtD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACrB,KAAK,EAAE,GAAG,CAAC,KAAK;wBAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,CAAC;wBAC3B,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,iCAAiC;qBACzF,CAAC,CAAC,CAAC,CAAC;gBACT,CAAC;YACL,CAAC,CACJ,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,oBAAoB,CAC9B,WAAqB,EACrB,KAAa,EACb,SAAuC,EACvC,QAAiB;QAEjB,kDAAkD;QAClD,IAAI,KAAK,GAAG;;;;;SAKX,CAAC;QAEF,MAAM,MAAM,GAAU,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;QAEpD,mCAAmC;QACnC,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;YACxB,KAAK,IAAI;4DACuC,CAAC;YACjD,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACrC,CAAC;QAED,KAAK,IAAI,4BAA4B,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEnB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,IAAW,EAAE,EAAE;gBAC5C,IAAI,GAAG,EAAE,CAAC;oBACN,yEAAyE;oBACzE,iFAAiF;oBACjF,OAAO,CAAC,EAAE,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACrB,KAAK,EAAE,GAAG,CAAC,KAAK;wBAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,CAAC;wBAC3B,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;qBACvD,CAAC,CAAC,CAAC,CAAC;gBACT,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AA/UD,8CA+UC"}
|
|
@@ -12,6 +12,7 @@ export declare class EmbeddingPipeline {
|
|
|
12
12
|
private dependencyApi;
|
|
13
13
|
private adrApi;
|
|
14
14
|
private changeApi;
|
|
15
|
+
private moduleSummarizer;
|
|
15
16
|
constructor(dbManager: MultiDbManager, embeddingGenerator: EmbeddingGenerator);
|
|
16
17
|
/**
|
|
17
18
|
* Syncs embeddings for all dimensions.
|
|
@@ -38,5 +39,33 @@ export declare class EmbeddingPipeline {
|
|
|
38
39
|
* Computes content hash for change detection.
|
|
39
40
|
*/
|
|
40
41
|
private computeContentHash;
|
|
42
|
+
/**
|
|
43
|
+
* Estimates token count from content length (Markdown-optimized).
|
|
44
|
+
* Markdown has different token densities:
|
|
45
|
+
* - Code blocks: ~3 chars/token (more tokens per char due to formatting)
|
|
46
|
+
* - Normal text: ~4 chars/token (standard estimate)
|
|
47
|
+
* - Tables: ~2.5 chars/token (many separators increase token count)
|
|
48
|
+
*/
|
|
49
|
+
private estimateTokens;
|
|
50
|
+
/**
|
|
51
|
+
* Optimizes module documentation for embedding while preserving semantic meaning.
|
|
52
|
+
* Strategy: Keep structure and important information, remove detailed tables.
|
|
53
|
+
* Aggressively truncates code blocks to signatures only, limits table rows.
|
|
54
|
+
*
|
|
55
|
+
* @param content Full markdown content
|
|
56
|
+
* @param maxTokens Maximum tokens allowed
|
|
57
|
+
* @returns Optimized content
|
|
58
|
+
*/
|
|
59
|
+
private optimizeModuleContentForEmbedding;
|
|
60
|
+
/**
|
|
61
|
+
* Extracts only the structure of a module (header, interface/method names, signatures).
|
|
62
|
+
* Used for hierarchical embeddings where details are in Y-Dimension (Symbols).
|
|
63
|
+
* Only keeps: Headers, interface/method/class/variable names, first line of code blocks (signatures).
|
|
64
|
+
* Removes: All tables, code block bodies, normal text.
|
|
65
|
+
*
|
|
66
|
+
* @param content Full markdown content
|
|
67
|
+
* @returns Module structure (header + names + signatures, no details)
|
|
68
|
+
*/
|
|
69
|
+
private extractModuleStructure;
|
|
41
70
|
}
|
|
42
71
|
//# sourceMappingURL=embedding-pipeline.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedding-pipeline.d.ts","sourceRoot":"","sources":["../../src/embedding/embedding-pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"embedding-pipeline.d.ts","sourceRoot":"","sources":["../../src/embedding/embedding-pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAgB3D;;;GAGG;AACH,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,gBAAgB,CAAmB;gBAE/B,SAAS,EAAE,cAAc,EAAE,kBAAkB,EAAE,kBAAkB;IAW7E;;;OAGG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBrD;;OAEG;IACG,aAAa,CACf,SAAS,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EACtC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC;IAyJhB;;OAEG;YACW,uBAAuB;IAoBrC;;OAEG;YACW,0BAA0B;IAoFxC;;OAEG;IACH,OAAO,CAAC,aAAa;IAgBrB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAoBtB;;;;;;;;OAQG;IACH,OAAO,CAAC,iCAAiC;IAkJzC;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;CAwEjC"}
|
|
@@ -40,6 +40,7 @@ const symbol_api_1 = require("../api/symbol-api");
|
|
|
40
40
|
const dependency_api_1 = require("../api/dependency-api");
|
|
41
41
|
const adr_api_1 = require("../api/adr-api");
|
|
42
42
|
const change_api_1 = require("../api/change-api");
|
|
43
|
+
const module_summarizer_1 = require("./module-summarizer");
|
|
43
44
|
const uuid_1 = require("uuid");
|
|
44
45
|
const crypto = __importStar(require("crypto"));
|
|
45
46
|
/**
|
|
@@ -55,6 +56,7 @@ class EmbeddingPipeline {
|
|
|
55
56
|
this.dependencyApi = new dependency_api_1.DependencyApi(dbManager);
|
|
56
57
|
this.adrApi = new adr_api_1.AdrApi(dbManager);
|
|
57
58
|
this.changeApi = new change_api_1.ChangeApi(dbManager);
|
|
59
|
+
this.moduleSummarizer = new module_summarizer_1.ModuleSummarizer();
|
|
58
60
|
}
|
|
59
61
|
/**
|
|
60
62
|
* Syncs embeddings for all dimensions.
|
|
@@ -108,7 +110,12 @@ class EmbeddingPipeline {
|
|
|
108
110
|
// Find entities that need embedding generation
|
|
109
111
|
const toGenerate = [];
|
|
110
112
|
for (const entity of entities) {
|
|
111
|
-
const content = this.extractContentForEmbedding(dimension, entity);
|
|
113
|
+
const content = await this.extractContentForEmbedding(dimension, entity);
|
|
114
|
+
// Überspringe leere Content (z.B. extrem große Dateien, die nicht embeddet werden können)
|
|
115
|
+
if (!content || content.trim().length === 0) {
|
|
116
|
+
console.warn(`[EmbeddingPipeline] Skipping embedding for entity ${entity.id} in dimension ${dimension} (empty content)`);
|
|
117
|
+
continue;
|
|
118
|
+
}
|
|
112
119
|
const contentHash = this.computeContentHash(content);
|
|
113
120
|
const existing = existingMap.get(entity.id);
|
|
114
121
|
if (!existing || existing.content_hash !== contentHash) {
|
|
@@ -222,12 +229,53 @@ class EmbeddingPipeline {
|
|
|
222
229
|
/**
|
|
223
230
|
* Extracts content for embedding based on dimension.
|
|
224
231
|
*/
|
|
225
|
-
extractContentForEmbedding(dimension, entity) {
|
|
232
|
+
async extractContentForEmbedding(dimension, entity) {
|
|
226
233
|
switch (dimension) {
|
|
227
234
|
case 'X': {
|
|
228
235
|
// X (Modules): Full markdown content
|
|
229
236
|
const module = entity;
|
|
230
|
-
|
|
237
|
+
let content = module.content_markdown;
|
|
238
|
+
// TOKEN-LIMIT-CHECK: OpenAI text-embedding-3-small hat 8192 Token Context Length
|
|
239
|
+
const tokenEstimate = this.estimateTokens(content);
|
|
240
|
+
const maxTokens = 8000; // Sicher unter 8192 Token-Limit
|
|
241
|
+
if (tokenEstimate > maxTokens) {
|
|
242
|
+
console.warn(`[EmbeddingPipeline] Large module documentation: ${module.file_path} (~${tokenEstimate} tokens, max ${maxTokens})`);
|
|
243
|
+
// Für extrem große Dateien (>15000 Tokens): Verwende hierarchical Strategie automatisch
|
|
244
|
+
if (tokenEstimate > 15000) {
|
|
245
|
+
console.warn(`[EmbeddingPipeline] Extremely large module (>15000 tokens), using hierarchical strategy`);
|
|
246
|
+
content = this.extractModuleStructure(content);
|
|
247
|
+
const newTokenEstimate = this.estimateTokens(content);
|
|
248
|
+
if (newTokenEstimate > maxTokens) {
|
|
249
|
+
console.error(`[EmbeddingPipeline] Module still too large after hierarchical extraction (~${newTokenEstimate} tokens). Skipping embedding.`);
|
|
250
|
+
// Überspringe Embedding für diese Datei - gib leeren String zurück
|
|
251
|
+
return '';
|
|
252
|
+
}
|
|
253
|
+
return content;
|
|
254
|
+
}
|
|
255
|
+
// STRATEGIE-AUSWAHL: Intelligente Kürzung, Hierarchische Embeddings, oder Summarization
|
|
256
|
+
const strategy = process.env.EMBEDDING_STRATEGY || 'optimize';
|
|
257
|
+
if (strategy === 'summarize' && this.moduleSummarizer.isConfigured()) {
|
|
258
|
+
console.warn(`[EmbeddingPipeline] Using LLM-based summarization strategy...`);
|
|
259
|
+
try {
|
|
260
|
+
content = await this.moduleSummarizer.summarizeModuleContent(content, module.file_path);
|
|
261
|
+
const newTokenEstimate = this.estimateTokens(content);
|
|
262
|
+
console.log(`[EmbeddingPipeline] Summarized to ~${newTokenEstimate} tokens`);
|
|
263
|
+
}
|
|
264
|
+
catch (error) {
|
|
265
|
+
console.error(`[EmbeddingPipeline] Summarization failed, falling back to optimization: ${error}`);
|
|
266
|
+
content = this.optimizeModuleContentForEmbedding(content, maxTokens);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
else if (strategy === 'hierarchical') {
|
|
270
|
+
console.warn(`[EmbeddingPipeline] Using hierarchical embedding strategy...`);
|
|
271
|
+
content = this.extractModuleStructure(content);
|
|
272
|
+
}
|
|
273
|
+
else {
|
|
274
|
+
console.warn(`[EmbeddingPipeline] Optimizing content for embedding...`);
|
|
275
|
+
content = this.optimizeModuleContentForEmbedding(content, maxTokens);
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
return content;
|
|
231
279
|
}
|
|
232
280
|
case 'Y': {
|
|
233
281
|
// Y (Symbols): {name} {signature} {dependencies_summary}
|
|
@@ -285,6 +333,243 @@ class EmbeddingPipeline {
|
|
|
285
333
|
computeContentHash(content) {
|
|
286
334
|
return crypto.createHash('sha256').update(content).digest('hex');
|
|
287
335
|
}
|
|
336
|
+
/**
|
|
337
|
+
* Estimates token count from content length (Markdown-optimized).
|
|
338
|
+
* Markdown has different token densities:
|
|
339
|
+
* - Code blocks: ~3 chars/token (more tokens per char due to formatting)
|
|
340
|
+
* - Normal text: ~4 chars/token (standard estimate)
|
|
341
|
+
* - Tables: ~2.5 chars/token (many separators increase token count)
|
|
342
|
+
*/
|
|
343
|
+
estimateTokens(content) {
|
|
344
|
+
// Match code blocks (```...```)
|
|
345
|
+
const codeBlockMatches = content.match(/```[\s\S]*?```/g) || [];
|
|
346
|
+
const codeBlockLength = codeBlockMatches.reduce((sum, block) => sum + block.length, 0);
|
|
347
|
+
// Match table rows (|...|)
|
|
348
|
+
const tableMatches = content.match(/\|.*\|/g) || [];
|
|
349
|
+
const tableLength = tableMatches.reduce((sum, line) => sum + line.length, 0);
|
|
350
|
+
// Normal text (everything else)
|
|
351
|
+
const normalLength = content.length - codeBlockLength - tableLength;
|
|
352
|
+
// Calculate tokens for each type
|
|
353
|
+
const codeTokens = Math.ceil(codeBlockLength / 3); // Code blocks: ~3 chars/token
|
|
354
|
+
const tableTokens = Math.ceil(tableLength / 2.5); // Tables: ~2.5 chars/token
|
|
355
|
+
const normalTokens = Math.ceil(normalLength / 4); // Normal text: ~4 chars/token
|
|
356
|
+
return codeTokens + tableTokens + normalTokens;
|
|
357
|
+
}
|
|
358
|
+
/**
|
|
359
|
+
* Optimizes module documentation for embedding while preserving semantic meaning.
|
|
360
|
+
* Strategy: Keep structure and important information, remove detailed tables.
|
|
361
|
+
* Aggressively truncates code blocks to signatures only, limits table rows.
|
|
362
|
+
*
|
|
363
|
+
* @param content Full markdown content
|
|
364
|
+
* @param maxTokens Maximum tokens allowed
|
|
365
|
+
* @returns Optimized content
|
|
366
|
+
*/
|
|
367
|
+
optimizeModuleContentForEmbedding(content, maxTokens) {
|
|
368
|
+
const lines = content.split('\n');
|
|
369
|
+
const optimized = [];
|
|
370
|
+
let currentTokens = 0;
|
|
371
|
+
const maxTokensWithMargin = maxTokens * 0.95; // 5% Margin für Sicherheit
|
|
372
|
+
let inCodeBlock = false;
|
|
373
|
+
let codeBlockStartLine = -1;
|
|
374
|
+
let codeBlockOpener = '';
|
|
375
|
+
let interfaceCount = 0;
|
|
376
|
+
let methodCount = 0;
|
|
377
|
+
let tableRowCount = 0;
|
|
378
|
+
let tableHeaderSkipped = false;
|
|
379
|
+
for (let i = 0; i < lines.length; i++) {
|
|
380
|
+
const line = lines[i];
|
|
381
|
+
const lineTokens = this.estimateTokens(line);
|
|
382
|
+
// Prüfe Token-Anzahl während Iteration (frühe Kürzung)
|
|
383
|
+
if (currentTokens + lineTokens > maxTokensWithMargin) {
|
|
384
|
+
// Versuche bei logischem Punkt zu kürzen
|
|
385
|
+
if (inCodeBlock) {
|
|
386
|
+
// Kürze Code-Block: Behalte nur erste Zeile (Signatur)
|
|
387
|
+
if (codeBlockStartLine >= 0 && i > codeBlockStartLine) {
|
|
388
|
+
const codeBlockLines = lines.slice(codeBlockStartLine + 1, i);
|
|
389
|
+
const firstLine = codeBlockLines.find(l => l.trim() && !l.startsWith('```'));
|
|
390
|
+
if (firstLine) {
|
|
391
|
+
optimized.push(codeBlockOpener);
|
|
392
|
+
optimized.push(firstLine);
|
|
393
|
+
optimized.push('```');
|
|
394
|
+
currentTokens += this.estimateTokens(codeBlockOpener + '\n' + firstLine + '\n```');
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
inCodeBlock = false;
|
|
398
|
+
codeBlockStartLine = -1;
|
|
399
|
+
}
|
|
400
|
+
// Füge Truncation-Marker hinzu
|
|
401
|
+
optimized.push('\n[... content optimized for embedding - truncated to fit token limit ...]');
|
|
402
|
+
break;
|
|
403
|
+
}
|
|
404
|
+
// Behalte Header (wichtig für Struktur)
|
|
405
|
+
if (line.startsWith('#') || line.startsWith('##')) {
|
|
406
|
+
optimized.push(line);
|
|
407
|
+
currentTokens += lineTokens;
|
|
408
|
+
continue;
|
|
409
|
+
}
|
|
410
|
+
// Behalte Interface/Method-Namen (wichtig für Semantic Search)
|
|
411
|
+
if (line.startsWith('### interface:') || line.startsWith('### method:') || line.startsWith('### class:') || line.startsWith('### variable:')) {
|
|
412
|
+
optimized.push(line);
|
|
413
|
+
currentTokens += lineTokens;
|
|
414
|
+
if (line.includes('interface:'))
|
|
415
|
+
interfaceCount++;
|
|
416
|
+
if (line.includes('method:'))
|
|
417
|
+
methodCount++;
|
|
418
|
+
tableRowCount = 0;
|
|
419
|
+
tableHeaderSkipped = false;
|
|
420
|
+
continue;
|
|
421
|
+
}
|
|
422
|
+
// Code-Blöcke: Behalte nur erste Zeile (Signatur)
|
|
423
|
+
if (line.startsWith('```')) {
|
|
424
|
+
if (!inCodeBlock) {
|
|
425
|
+
// Code-Block startet
|
|
426
|
+
inCodeBlock = true;
|
|
427
|
+
codeBlockStartLine = i;
|
|
428
|
+
codeBlockOpener = line;
|
|
429
|
+
optimized.push(line); // Behalte ``` opener
|
|
430
|
+
currentTokens += lineTokens;
|
|
431
|
+
}
|
|
432
|
+
else {
|
|
433
|
+
// Code-Block endet
|
|
434
|
+
inCodeBlock = false;
|
|
435
|
+
optimized.push(line); // Behalte ``` closer
|
|
436
|
+
currentTokens += lineTokens;
|
|
437
|
+
codeBlockStartLine = -1;
|
|
438
|
+
}
|
|
439
|
+
continue;
|
|
440
|
+
}
|
|
441
|
+
if (inCodeBlock) {
|
|
442
|
+
// In Code-Block: Behalte nur erste Zeile (Signatur)
|
|
443
|
+
if (codeBlockStartLine === i - 1) {
|
|
444
|
+
// Erste Zeile nach ``` opener
|
|
445
|
+
optimized.push(line);
|
|
446
|
+
currentTokens += lineTokens;
|
|
447
|
+
}
|
|
448
|
+
// Überspringe weitere Zeilen im Code-Block
|
|
449
|
+
continue;
|
|
450
|
+
}
|
|
451
|
+
// Tabellen: Aggressiver kürzen (max. 3 Zeilen pro Tabelle)
|
|
452
|
+
if (line.startsWith('|')) {
|
|
453
|
+
if (line.includes('---')) {
|
|
454
|
+
// Tabellen-Separator: Behalte
|
|
455
|
+
optimized.push(line);
|
|
456
|
+
currentTokens += lineTokens;
|
|
457
|
+
tableRowCount = 0;
|
|
458
|
+
tableHeaderSkipped = false;
|
|
459
|
+
}
|
|
460
|
+
else {
|
|
461
|
+
// Tabellen-Zeile: Überspringe nach 3 Zeilen
|
|
462
|
+
if (tableRowCount < 3) {
|
|
463
|
+
optimized.push(line);
|
|
464
|
+
currentTokens += lineTokens;
|
|
465
|
+
tableRowCount++;
|
|
466
|
+
}
|
|
467
|
+
// Überspringe weitere Zeilen
|
|
468
|
+
}
|
|
469
|
+
continue;
|
|
470
|
+
}
|
|
471
|
+
// Behalte wichtige Kommentare (change markers)
|
|
472
|
+
if (line.trim().startsWith('<!--') && line.includes('change:')) {
|
|
473
|
+
optimized.push(line);
|
|
474
|
+
currentTokens += lineTokens;
|
|
475
|
+
continue;
|
|
476
|
+
}
|
|
477
|
+
// Behalte leere Zeilen (Struktur)
|
|
478
|
+
if (line.trim() === '') {
|
|
479
|
+
optimized.push(line);
|
|
480
|
+
continue;
|
|
481
|
+
}
|
|
482
|
+
// Für sehr große Dokumentationen: Überspringe normale Text-Zeilen
|
|
483
|
+
if (interfaceCount > 20 || methodCount > 50) {
|
|
484
|
+
// Überspringe normale Text-Zeilen (nicht Header, nicht Code, nicht Tabellen)
|
|
485
|
+
continue;
|
|
486
|
+
}
|
|
487
|
+
// Behalte alle anderen Zeilen
|
|
488
|
+
optimized.push(line);
|
|
489
|
+
currentTokens += lineTokens;
|
|
490
|
+
}
|
|
491
|
+
const optimizedContent = optimized.join('\n');
|
|
492
|
+
const finalTokens = this.estimateTokens(optimizedContent);
|
|
493
|
+
// Finale Prüfung: Falls immer noch zu groß, kürze aggressiv
|
|
494
|
+
if (finalTokens > maxTokens) {
|
|
495
|
+
const maxChars = maxTokens * 3; // Konservativ: 3 chars/token
|
|
496
|
+
const truncated = optimizedContent.substring(0, maxChars);
|
|
497
|
+
return truncated + '\n\n[... content optimized for embedding - final truncation ...]';
|
|
498
|
+
}
|
|
499
|
+
return optimizedContent;
|
|
500
|
+
}
|
|
501
|
+
/**
|
|
502
|
+
* Extracts only the structure of a module (header, interface/method names, signatures).
|
|
503
|
+
* Used for hierarchical embeddings where details are in Y-Dimension (Symbols).
|
|
504
|
+
* Only keeps: Headers, interface/method/class/variable names, first line of code blocks (signatures).
|
|
505
|
+
* Removes: All tables, code block bodies, normal text.
|
|
506
|
+
*
|
|
507
|
+
* @param content Full markdown content
|
|
508
|
+
* @returns Module structure (header + names + signatures, no details)
|
|
509
|
+
*/
|
|
510
|
+
extractModuleStructure(content) {
|
|
511
|
+
const lines = content.split('\n');
|
|
512
|
+
const structure = [];
|
|
513
|
+
let inCodeBlock = false;
|
|
514
|
+
let codeBlockOpener = '';
|
|
515
|
+
let codeBlockFirstLine = null;
|
|
516
|
+
for (let i = 0; i < lines.length; i++) {
|
|
517
|
+
const line = lines[i];
|
|
518
|
+
// Behalte alle Header
|
|
519
|
+
if (line.startsWith('#') || line.startsWith('##') || line.startsWith('###')) {
|
|
520
|
+
structure.push(line);
|
|
521
|
+
continue;
|
|
522
|
+
}
|
|
523
|
+
// Code-Blöcke: Behalte nur erste Zeile (Signatur)
|
|
524
|
+
if (line.startsWith('```')) {
|
|
525
|
+
if (inCodeBlock) {
|
|
526
|
+
// Ende des Code-Blocks: Behalte nur erste Zeile (Signatur)
|
|
527
|
+
if (codeBlockFirstLine !== null) {
|
|
528
|
+
structure.push(codeBlockOpener);
|
|
529
|
+
structure.push(codeBlockFirstLine);
|
|
530
|
+
structure.push('```');
|
|
531
|
+
}
|
|
532
|
+
codeBlockFirstLine = null;
|
|
533
|
+
inCodeBlock = false;
|
|
534
|
+
}
|
|
535
|
+
else {
|
|
536
|
+
// Code-Block startet
|
|
537
|
+
inCodeBlock = true;
|
|
538
|
+
codeBlockOpener = line;
|
|
539
|
+
}
|
|
540
|
+
continue;
|
|
541
|
+
}
|
|
542
|
+
if (inCodeBlock) {
|
|
543
|
+
// In Code-Block: Behalte nur erste Zeile (Signatur)
|
|
544
|
+
if (codeBlockFirstLine === null && line.trim() && !line.startsWith('```')) {
|
|
545
|
+
codeBlockFirstLine = line;
|
|
546
|
+
}
|
|
547
|
+
// Überspringe weitere Zeilen im Code-Block
|
|
548
|
+
continue;
|
|
549
|
+
}
|
|
550
|
+
// Überspringe Tabellen komplett (Details sind in Y-Dimension)
|
|
551
|
+
if (line.startsWith('|')) {
|
|
552
|
+
continue;
|
|
553
|
+
}
|
|
554
|
+
// Behalte wichtige Kommentare (change markers, etc.)
|
|
555
|
+
if (line.trim().startsWith('<!--') && line.includes('change:')) {
|
|
556
|
+
structure.push(line);
|
|
557
|
+
continue;
|
|
558
|
+
}
|
|
559
|
+
// Behalte leere Zeilen für Struktur (max. 2 aufeinanderfolgende)
|
|
560
|
+
if (line.trim() === '') {
|
|
561
|
+
const lastLine = structure[structure.length - 1];
|
|
562
|
+
if (lastLine && lastLine.trim() === '') {
|
|
563
|
+
// Bereits eine leere Zeile, überspringe weitere
|
|
564
|
+
continue;
|
|
565
|
+
}
|
|
566
|
+
structure.push(line);
|
|
567
|
+
continue;
|
|
568
|
+
}
|
|
569
|
+
// Überspringe alle anderen Details (normaler Text, Beschreibungen, etc.)
|
|
570
|
+
}
|
|
571
|
+
return structure.join('\n');
|
|
572
|
+
}
|
|
288
573
|
}
|
|
289
574
|
exports.EmbeddingPipeline = EmbeddingPipeline;
|
|
290
575
|
//# sourceMappingURL=embedding-pipeline.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedding-pipeline.js","sourceRoot":"","sources":["../../src/embedding/embedding-pipeline.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,+EAAsF;AACtF,kDAA8C;AAC9C,kDAA8C;AAC9C,0DAAsD;AACtD,4CAAwC;AACxC,kDAA8C;AAM9C,+BAAoC;AACpC,+CAAiC;AAEjC;;;GAGG;AACH,MAAa,iBAAiB;IAS1B,YAAY,SAAyB,EAAE,kBAAsC;QACzE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,sBAAS,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,sBAAS,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAG,IAAI,8BAAa,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAM,CAAC,SAAS,CAAC,CAAC;QACpC,IAAI,CAAC,SAAS,GAAG,IAAI,sBAAS,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,cAAc,CAAC,QAAgB;QACjC,OAAO,CAAC,GAAG,CAAC,0DAA0D,QAAQ,EAAE,CAAC,CAAC;QAElF,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,EAAE,CAAC;YAC1C,OAAO,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAC;YACvF,OAAO;QACX,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;QAEjD,sBAAsB;QACtB,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/C,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/C,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/C,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/C,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAE/C,OAAO,CAAC,GAAG,CAAC,2DAA2D,QAAQ,EAAE,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CACf,SAAsC,EACtC,QAAgB,EAChB,KAAa;QAEb,OAAO,CAAC,GAAG,CAAC,yCAAyC,SAAS,eAAe,QAAQ,EAAE,CAAC,CAAC;QAEzF,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,aAAa,GAAG,IAAI,0CAAmB,CAAC,EAAE,CAAC,CAAC;QAElD,0CAA0C;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC;QACpD,MAAM,iBAAiB,GAAG,QAAQ,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;QAE7D,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,kDAAkD,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;YAC/F,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,yGAAyG,CAAC,CAAC;YAC5H,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,IAAI,CAAC,gIAAgI,CAAC,CAAC;QACnJ,CAAC;QAED,sCAAsC;QACtC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,6BAA6B,QAAQ,CAAC,MAAM,0BAA0B,SAAS,EAAE,CAAC,CAAC;QAE/F,0BAA0B;QAC1B,MAAM,kBAAkB,GAAG,MAAM,aAAa,CAAC,iBAAiB,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC7F,MAAM,WAAW,GAAG,IAAI,GAAG,EAAqB,CAAC;QACjD,KAAK,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;YACnC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC;QAED,+CAA+C;QAC/C,MAAM,UAAU,GAAiE,EAAE,CAAC;QAEpF,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;YAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,0BAA0B,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACnE,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAErD,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,YAAY,KAAK,WAAW,EAAE,CAAC;gBACrD,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;YACtD,CAAC;QACL,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,wCAAwC,UAAU,CAAC,MAAM,6BAA6B,SAAS,EAAE,CAAC,CAAC;QAE/G,wDAAwD;QACxD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACvC,SAAS;gBACT,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;gBACxB,OAAO,EAAE,IAAI,CAAC,OAAO;aACxB,CAAC,CAAC,CAAC;YAEJ,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAE3E,kBAAkB;YAClB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;gBAC5B,MAAM,eAAe,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACvD,IAAI,CAAC,eAAe,EAAE,CAAC;oBACnB,OAAO,CAAC,IAAI,CAAC,yDAAyD,IAAI,CAAC,MAAM,CAAC,EAAE,iBAAiB,SAAS,EAAE,CAAC,CAAC;oBAClH,SAAS;gBACb,CAAC;gBAED,sEAAsE;gBACtE,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;gBAE3E,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACjD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBAE9D,IAAI,WAAmB,CAAC;gBACxB,IAAI,QAAQ,EAAE,CAAC;oBACX,4BAA4B;oBAC5B,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;oBACzC,QAAQ,CAAC,gBAAgB,GAAG,YAAY,CAAC;oBACzC,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAC;oBAC1B,MAAM,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACrC,WAAW,GAAG,QAAQ,CAAC,EAAE,CAAC;gBAC9B,CAAC;qBAAM,CAAC;oBACJ,uBAAuB;oBACvB,MAAM,SAAS,GAAc;wBACzB,EAAE,EAAE,IAAA,SAAM,GAAE;wBACZ,SAAS,EAAE,QAAQ;wBACnB,SAAS;wBACT,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;wBACzB,WAAW,EAAE,UAAU;wBACvB,YAAY,EAAE,IAAI,CAAC,WAAW;wBAC9B,eAAe,EAAE,KAAK;wBACtB,gBAAgB,EAAE,YAAY;wBAC9B,UAAU,EAAE,GAAG;wBACf,UAAU,EAAE,GAAG;qBAClB,CAAC;oBACF,MAAM,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBACtC,WAAW,GAAG,SAAS,CAAC,EAAE,CAAC;gBAC/B,CAAC;gBAED,+CAA+C;gBAC/C,IAAI,iBAAiB,EAAE,CAAC;oBACpB,IAAI,CAAC;wBACD,qDAAqD;wBACrD,MAAM,WAAW,GAAG,IAAI,YAAY,CAChC,YAAY,CAAC,MAAM,EACnB,YAAY,CAAC,UAAU,EACvB,YAAY,CAAC,MAAM,GAAG,CAAC,CAC1B,CAAC;wBACF,MAAM,QAAS,CAAC,eAAe,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;oBAC9D,CAAC;oBAAC,OAAO,aAAa,EAAE,CAAC;wBACrB,OAAO,CAAC,IAAI,CAAC,gDAAgD,WAAW,wBAAwB,aAAa,EAAE,CAAC,CAAC;wBACjH,wDAAwD;oBAC5D,CAAC;gBACL,CAAC;YACL,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,4CAA4C,UAAU,CAAC,MAAM,yCAAyC,SAAS,EAAE,CAAC,CAAC;QACnI,CAAC;QAED,8EAA8E;QAC9E,mFAAmF;QACnF,wDAAwD;QACxD,IAAI,iBAAiB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrD,OAAO,CAAC,GAAG,CAAC,+BAA+B,kBAAkB,CAAC,MAAM,yDAAyD,SAAS,EAAE,CAAC,CAAC;YAC1I,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,IAAI,WAAW,GAAG,CAAC,CAAC;YAEpB,KAAK,MAAM,SAAS,IAAI,kBAAkB,EAAE,CAAC;gBACzC,IAAI,CAAC;oBACD,iCAAiC;oBACjC,MAAM,YAAY,GAAG,SAAS,CAAC,gBAAgB,CAAC;oBAChD,MAAM,WAAW,GAAG,IAAI,YAAY,CAChC,YAAY,CAAC,MAAM,EACnB,YAAY,CAAC,UAAU,EACvB,YAAY,CAAC,MAAM,GAAG,CAAC,CAC1B,CAAC;oBACF,MAAM,QAAS,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;oBAC3D,WAAW,EAAE,CAAC;gBAClB,CAAC;gBAAC,OAAO,aAAa,EAAE,CAAC;oBACrB,OAAO,CAAC,IAAI,CAAC,yDAAyD,SAAS,CAAC,EAAE,wBAAwB,aAAa,EAAE,CAAC,CAAC;oBAC3H,WAAW,EAAE,CAAC;gBAClB,CAAC;YACL,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,8BAA8B,WAAW,yDAAyD,SAAS,KAAK,WAAW,UAAU,CAAC,CAAC;QACvJ,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,uBAAuB,CACjC,SAAsC,EACtC,QAAgB;QAEhB,QAAQ,SAAS,EAAE,CAAC;YAChB,KAAK,GAAG;gBACJ,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YACxD,KAAK,GAAG;gBACJ,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YACxD,KAAK,GAAG;gBACJ,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YACjE,KAAK,GAAG;gBACJ,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAClD,KAAK,GAAG;gBACJ,mDAAmD;gBACnD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;gBAC1E,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,CAAC;IACL,CAAC;IAED;;OAEG;IACK,0BAA0B,CAAC,SAAsC,EAAE,MAAW;QAClF,QAAQ,SAAS,EAAE,CAAC;YAChB,KAAK,GAAG,CAAC,CAAC,CAAC;gBACP,qCAAqC;gBACrC,MAAM,MAAM,GAAG,MAAgB,CAAC;gBAChC,OAAO,MAAM,CAAC,gBAAgB,CAAC;YACnC,CAAC;YACD,KAAK,GAAG,CAAC,CAAC,CAAC;gBACP,yDAAyD;gBACzD,MAAM,MAAM,GAAG,MAAgB,CAAC;gBAChC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC;gBAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACxD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;gBACrC,OAAO,GAAG,MAAM,CAAC,IAAI,KAAK,YAAY,KAAK,OAAO,EAAE,CAAC;YACzD,CAAC;YACD,KAAK,GAAG,CAAC,CAAC,CAAC;gBACP,oFAAoF;gBACpF,MAAM,GAAG,GAAG,MAAoB,CAAC;gBACjC,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrE,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxE,OAAO,GAAG,GAAG,CAAC,WAAW,MAAM,GAAG,CAAC,SAAS,KAAK,GAAG,CAAC,eAAe,IAAI,UAAU,EAAE,CAAC;YACzF,CAAC;YACD,KAAK,GAAG,CAAC,CAAC,CAAC;gBACP,6CAA6C;gBAC7C,MAAM,GAAG,GAAG,MAAa,CAAC;gBAC1B,8DAA8D;gBAC9D,MAAM,WAAW,GAAG,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;gBACvE,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAmB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3F,OAAO,GAAG,GAAG,CAAC,KAAK,KAAK,GAAG,CAAC,gBAAgB,GAAG,QAAQ,EAAE,CAAC;YAC9D,CAAC;YACD,KAAK,GAAG,CAAC,CAAC,CAAC;gBACP,gEAAgE;gBAChE,MAAM,MAAM,GAAG,MAAsB,CAAC;gBACtC,oEAAoE;gBACpE,+BAA+B;gBAC/B,OAAO,kBAAkB,MAAM,CAAC,QAAQ,aAAa,MAAM,CAAC,YAAY,yBAAyB,MAAM,CAAC,kBAAkB,EAAE,CAAC;YACjI,CAAC;QACL,CAAC;IACL,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,SAAsC,EAAE,MAAW;QACrE,QAAQ,SAAS,EAAE,CAAC;YAChB,KAAK,GAAG;gBACJ,OAAQ,MAAiB,CAAC,SAAS,CAAC;YACxC,KAAK,GAAG;gBACJ,OAAQ,MAAiB,CAAC,SAAS,CAAC;YACxC,KAAK,GAAG;gBACJ,MAAM,GAAG,GAAG,MAAoB,CAAC;gBACjC,OAAO,GAAG,GAAG,CAAC,WAAW,MAAM,GAAG,CAAC,SAAS,EAAE,CAAC;YACnD,KAAK,GAAG;gBACJ,OAAQ,MAAc,CAAC,UAAU,CAAC;YACtC,KAAK,GAAG;gBACJ,OAAQ,MAAuB,CAAC,EAAE,CAAC;QAC3C,CAAC;IACL,CAAC;IAED;;OAEG;IACK,kBAAkB,CAAC,OAAe;QACtC,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrE,CAAC;CACJ;AA/RD,8CA+RC"}
|
|
1
|
+
{"version":3,"file":"embedding-pipeline.js","sourceRoot":"","sources":["../../src/embedding/embedding-pipeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Summarizes large module documentation using LLM.
|
|
3
|
+
* Used for very large modules that exceed token limits even after optimization.
|
|
4
|
+
*/
|
|
5
|
+
export declare class ModuleSummarizer {
|
|
6
|
+
private openai;
|
|
7
|
+
private readonly model;
|
|
8
|
+
private readonly maxTokens;
|
|
9
|
+
constructor(apiKey?: string);
|
|
10
|
+
/**
|
|
11
|
+
* Summarizes module documentation for embedding.
|
|
12
|
+
* Preserves: Structure, interface/method names, key signatures, important comments.
|
|
13
|
+
* Removes: Detailed tables, repetitive code blocks, verbose descriptions.
|
|
14
|
+
*
|
|
15
|
+
* @param content Full markdown content
|
|
16
|
+
* @param filePath File path for context
|
|
17
|
+
* @returns Summarized content optimized for embedding
|
|
18
|
+
*/
|
|
19
|
+
summarizeModuleContent(content: string, filePath: string): Promise<string>;
|
|
20
|
+
/**
|
|
21
|
+
* Checks if OpenAI API is configured.
|
|
22
|
+
*/
|
|
23
|
+
isConfigured(): boolean;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=module-summarizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module-summarizer.d.ts","sourceRoot":"","sources":["../../src/embedding/module-summarizer.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,qBAAa,gBAAgB;IACzB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAC/C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;gBAE9B,MAAM,CAAC,EAAE,MAAM;IAa3B;;;;;;;;OAQG;IACG,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA8DhF;;OAEG;IACH,YAAY,IAAI,OAAO;CAG1B"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ModuleSummarizer = void 0;
|
|
7
|
+
const openai_1 = __importDefault(require("openai"));
|
|
8
|
+
/**
|
|
9
|
+
* Summarizes large module documentation using LLM.
|
|
10
|
+
* Used for very large modules that exceed token limits even after optimization.
|
|
11
|
+
*/
|
|
12
|
+
class ModuleSummarizer {
|
|
13
|
+
constructor(apiKey) {
|
|
14
|
+
this.openai = null;
|
|
15
|
+
this.model = 'gpt-4o-mini'; // Cost-effective model for summarization
|
|
16
|
+
this.maxTokens = 4000; // Summary should be ~4000 tokens max
|
|
17
|
+
if (apiKey) {
|
|
18
|
+
this.openai = new openai_1.default({ apiKey });
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
const envKey = process.env.OPENAI_API_KEY;
|
|
22
|
+
if (envKey) {
|
|
23
|
+
this.openai = new openai_1.default({ apiKey: envKey });
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
console.warn('[ModuleSummarizer] OpenAI API key not provided. Summarization will not work.');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Summarizes module documentation for embedding.
|
|
32
|
+
* Preserves: Structure, interface/method names, key signatures, important comments.
|
|
33
|
+
* Removes: Detailed tables, repetitive code blocks, verbose descriptions.
|
|
34
|
+
*
|
|
35
|
+
* @param content Full markdown content
|
|
36
|
+
* @param filePath File path for context
|
|
37
|
+
* @returns Summarized content optimized for embedding
|
|
38
|
+
*/
|
|
39
|
+
async summarizeModuleContent(content, filePath) {
|
|
40
|
+
if (!this.openai) {
|
|
41
|
+
throw new Error('OpenAI API key not configured. Set OPENAI_API_KEY environment variable.');
|
|
42
|
+
}
|
|
43
|
+
if (!content || content.trim().length === 0) {
|
|
44
|
+
throw new Error(`Empty content for file ${filePath}`);
|
|
45
|
+
}
|
|
46
|
+
const prompt = `You are a documentation optimizer for code embeddings. Your task is to summarize this module documentation while preserving all information needed for semantic search.
|
|
47
|
+
|
|
48
|
+
PRESERVE:
|
|
49
|
+
- All headers (#, ##, ###)
|
|
50
|
+
- All interface, class, method, and variable names
|
|
51
|
+
- All code signatures (first line of code blocks)
|
|
52
|
+
- Important comments (especially change markers like <!-- change: ... -->)
|
|
53
|
+
- Module structure and organization
|
|
54
|
+
|
|
55
|
+
REMOVE or SUMMARIZE:
|
|
56
|
+
- Detailed property/parameter tables (keep only names, not full tables)
|
|
57
|
+
- Repetitive code blocks (keep only signatures)
|
|
58
|
+
- Verbose descriptions (keep only key points)
|
|
59
|
+
- Long lists (summarize)
|
|
60
|
+
|
|
61
|
+
Output format: Markdown, same structure as input, but optimized for embedding.
|
|
62
|
+
|
|
63
|
+
Module documentation:
|
|
64
|
+
\`\`\`
|
|
65
|
+
${content}
|
|
66
|
+
\`\`\`
|
|
67
|
+
|
|
68
|
+
Optimized summary:`;
|
|
69
|
+
try {
|
|
70
|
+
const response = await this.openai.chat.completions.create({
|
|
71
|
+
model: this.model,
|
|
72
|
+
messages: [
|
|
73
|
+
{
|
|
74
|
+
role: 'system',
|
|
75
|
+
content: 'You are a documentation optimizer. Summarize module documentation for embeddings while preserving semantic meaning and structure.'
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
role: 'user',
|
|
79
|
+
content: prompt
|
|
80
|
+
}
|
|
81
|
+
],
|
|
82
|
+
temperature: 0.3, // Low temperature for consistent summarization
|
|
83
|
+
max_tokens: this.maxTokens
|
|
84
|
+
});
|
|
85
|
+
const summary = response.choices[0]?.message?.content;
|
|
86
|
+
if (!summary) {
|
|
87
|
+
throw new Error('No summary returned from OpenAI');
|
|
88
|
+
}
|
|
89
|
+
return summary;
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
93
|
+
throw new Error(`Failed to summarize module content for ${filePath}: ${errorMessage}`);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Checks if OpenAI API is configured.
|
|
98
|
+
*/
|
|
99
|
+
isConfigured() {
|
|
100
|
+
return this.openai !== null;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
exports.ModuleSummarizer = ModuleSummarizer;
|
|
104
|
+
//# sourceMappingURL=module-summarizer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module-summarizer.js","sourceRoot":"","sources":["../../src/embedding/module-summarizer.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAE5B;;;GAGG;AACH,MAAa,gBAAgB;IAKzB,YAAY,MAAe;QAJnB,WAAM,GAAkB,IAAI,CAAC;QACpB,UAAK,GAAW,aAAa,CAAC,CAAC,yCAAyC;QACxE,cAAS,GAAW,IAAI,CAAC,CAAC,qCAAqC;QAG5E,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACJ,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;YAC1C,IAAI,MAAM,EAAE,CAAC;gBACT,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;YACjG,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,sBAAsB,CAAC,OAAe,EAAE,QAAgB;QAC1D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;QAC/F,CAAC;QAED,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;EAmBrB,OAAO;;;mBAGU,CAAC;QAEZ,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;gBACvD,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,QAAQ,EAAE;oBACN;wBACI,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,mIAAmI;qBAC/I;oBACD;wBACI,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,MAAM;qBAClB;iBACJ;gBACD,WAAW,EAAE,GAAG,EAAE,+CAA+C;gBACjE,UAAU,EAAE,IAAI,CAAC,SAAS;aAC7B,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;YACtD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;YACvD,CAAC;YAED,OAAO,OAAO,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,KAAK,YAAY,EAAE,CAAC,CAAC;QAC3F,CAAC;IACL,CAAC;IAED;;OAEG;IACH,YAAY;QACR,OAAO,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC;IAChC,CAAC;CACJ;AA/FD,4CA+FC"}
|
|
@@ -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"}
|