@mcp-graph-workflow/mcp-graph 5.5.3 → 5.6.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.
Files changed (224) hide show
  1. package/dist/api/router.d.ts.map +1 -1
  2. package/dist/api/router.js +4 -0
  3. package/dist/api/router.js.map +1 -1
  4. package/dist/api/routes/journey.d.ts +4 -0
  5. package/dist/api/routes/journey.d.ts.map +1 -0
  6. package/dist/api/routes/journey.js +263 -0
  7. package/dist/api/routes/journey.js.map +1 -0
  8. package/dist/api/routes/siebel.d.ts +7 -0
  9. package/dist/api/routes/siebel.d.ts.map +1 -0
  10. package/dist/api/routes/siebel.js +305 -0
  11. package/dist/api/routes/siebel.js.map +1 -0
  12. package/dist/core/context/rag-context.d.ts.map +1 -1
  13. package/dist/core/context/rag-context.js +21 -5
  14. package/dist/core/context/rag-context.js.map +1 -1
  15. package/dist/core/events/event-types.d.ts +63 -1
  16. package/dist/core/events/event-types.d.ts.map +1 -1
  17. package/dist/core/integrations/integration-orchestrator.d.ts +12 -0
  18. package/dist/core/integrations/integration-orchestrator.d.ts.map +1 -1
  19. package/dist/core/integrations/integration-orchestrator.js +36 -2
  20. package/dist/core/integrations/integration-orchestrator.js.map +1 -1
  21. package/dist/core/journey/journey-store.d.ts +137 -0
  22. package/dist/core/journey/journey-store.d.ts.map +1 -0
  23. package/dist/core/journey/journey-store.js +210 -0
  24. package/dist/core/journey/journey-store.js.map +1 -0
  25. package/dist/core/parser/file-reader.d.ts.map +1 -1
  26. package/dist/core/parser/file-reader.js +16 -1
  27. package/dist/core/parser/file-reader.js.map +1 -1
  28. package/dist/core/parser/read-docx.d.ts +17 -0
  29. package/dist/core/parser/read-docx.d.ts.map +1 -0
  30. package/dist/core/parser/read-docx.js +79 -0
  31. package/dist/core/parser/read-docx.js.map +1 -0
  32. package/dist/core/parser/read-swagger.d.ts +49 -0
  33. package/dist/core/parser/read-swagger.d.ts.map +1 -0
  34. package/dist/core/parser/read-swagger.js +332 -0
  35. package/dist/core/parser/read-swagger.js.map +1 -0
  36. package/dist/core/rag/chunk-text.d.ts +5 -0
  37. package/dist/core/rag/chunk-text.d.ts.map +1 -1
  38. package/dist/core/rag/chunk-text.js +135 -0
  39. package/dist/core/rag/chunk-text.js.map +1 -1
  40. package/dist/core/rag/code-context-indexer.d.ts +27 -0
  41. package/dist/core/rag/code-context-indexer.d.ts.map +1 -0
  42. package/dist/core/rag/code-context-indexer.js +53 -0
  43. package/dist/core/rag/code-context-indexer.js.map +1 -0
  44. package/dist/core/rag/decision-indexer.d.ts +20 -0
  45. package/dist/core/rag/decision-indexer.d.ts.map +1 -0
  46. package/dist/core/rag/decision-indexer.js +32 -0
  47. package/dist/core/rag/decision-indexer.js.map +1 -0
  48. package/dist/core/rag/journey-indexer.d.ts +16 -0
  49. package/dist/core/rag/journey-indexer.d.ts.map +1 -0
  50. package/dist/core/rag/journey-indexer.js +182 -0
  51. package/dist/core/rag/journey-indexer.js.map +1 -0
  52. package/dist/core/rag/knowledge-feedback.d.ts +15 -0
  53. package/dist/core/rag/knowledge-feedback.d.ts.map +1 -0
  54. package/dist/core/rag/knowledge-feedback.js +46 -0
  55. package/dist/core/rag/knowledge-feedback.js.map +1 -0
  56. package/dist/core/rag/knowledge-linker.d.ts +20 -0
  57. package/dist/core/rag/knowledge-linker.d.ts.map +1 -0
  58. package/dist/core/rag/knowledge-linker.js +107 -0
  59. package/dist/core/rag/knowledge-linker.js.map +1 -0
  60. package/dist/core/rag/knowledge-quality.d.ts +31 -0
  61. package/dist/core/rag/knowledge-quality.d.ts.map +1 -0
  62. package/dist/core/rag/knowledge-quality.js +127 -0
  63. package/dist/core/rag/knowledge-quality.js.map +1 -0
  64. package/dist/core/rag/knowledge-synthesizer.d.ts +17 -0
  65. package/dist/core/rag/knowledge-synthesizer.d.ts.map +1 -0
  66. package/dist/core/rag/knowledge-synthesizer.js +115 -0
  67. package/dist/core/rag/knowledge-synthesizer.js.map +1 -0
  68. package/dist/core/rag/memory-rag-query.d.ts +3 -3
  69. package/dist/core/rag/memory-rag-query.d.ts.map +1 -1
  70. package/dist/core/rag/memory-rag-query.js +18 -0
  71. package/dist/core/rag/memory-rag-query.js.map +1 -1
  72. package/dist/core/rag/multi-strategy-retrieval.d.ts +46 -0
  73. package/dist/core/rag/multi-strategy-retrieval.d.ts.map +1 -0
  74. package/dist/core/rag/multi-strategy-retrieval.js +140 -0
  75. package/dist/core/rag/multi-strategy-retrieval.js.map +1 -0
  76. package/dist/core/rag/rag-pipeline.d.ts +11 -0
  77. package/dist/core/rag/rag-pipeline.d.ts.map +1 -1
  78. package/dist/core/rag/rag-pipeline.js +39 -0
  79. package/dist/core/rag/rag-pipeline.js.map +1 -1
  80. package/dist/core/rag/siebel-indexer.d.ts +16 -0
  81. package/dist/core/rag/siebel-indexer.d.ts.map +1 -0
  82. package/dist/core/rag/siebel-indexer.js +75 -0
  83. package/dist/core/rag/siebel-indexer.js.map +1 -0
  84. package/dist/core/rag/swagger-indexer.d.ts +16 -0
  85. package/dist/core/rag/swagger-indexer.d.ts.map +1 -0
  86. package/dist/core/rag/swagger-indexer.js +119 -0
  87. package/dist/core/rag/swagger-indexer.js.map +1 -0
  88. package/dist/core/rag/validation-indexer.d.ts +23 -0
  89. package/dist/core/rag/validation-indexer.d.ts.map +1 -0
  90. package/dist/core/rag/validation-indexer.js +35 -0
  91. package/dist/core/rag/validation-indexer.js.map +1 -0
  92. package/dist/core/siebel/composer-automation.d.ts +77 -0
  93. package/dist/core/siebel/composer-automation.d.ts.map +1 -0
  94. package/dist/core/siebel/composer-automation.js +110 -0
  95. package/dist/core/siebel/composer-automation.js.map +1 -0
  96. package/dist/core/siebel/dependency-analyzer.d.ts +24 -0
  97. package/dist/core/siebel/dependency-analyzer.d.ts.map +1 -0
  98. package/dist/core/siebel/dependency-analyzer.js +174 -0
  99. package/dist/core/siebel/dependency-analyzer.js.map +1 -0
  100. package/dist/core/siebel/siebel-config.d.ts +28 -0
  101. package/dist/core/siebel/siebel-config.d.ts.map +1 -0
  102. package/dist/core/siebel/siebel-config.js +86 -0
  103. package/dist/core/siebel/siebel-config.js.map +1 -0
  104. package/dist/core/siebel/sif-context-assembler.d.ts +37 -0
  105. package/dist/core/siebel/sif-context-assembler.d.ts.map +1 -0
  106. package/dist/core/siebel/sif-context-assembler.js +259 -0
  107. package/dist/core/siebel/sif-context-assembler.js.map +1 -0
  108. package/dist/core/siebel/sif-generator.d.ts +26 -0
  109. package/dist/core/siebel/sif-generator.d.ts.map +1 -0
  110. package/dist/core/siebel/sif-generator.js +232 -0
  111. package/dist/core/siebel/sif-generator.js.map +1 -0
  112. package/dist/core/siebel/sif-parser.d.ts +16 -0
  113. package/dist/core/siebel/sif-parser.d.ts.map +1 -0
  114. package/dist/core/siebel/sif-parser.js +355 -0
  115. package/dist/core/siebel/sif-parser.js.map +1 -0
  116. package/dist/core/siebel/sif-templates.d.ts +45 -0
  117. package/dist/core/siebel/sif-templates.d.ts.map +1 -0
  118. package/dist/core/siebel/sif-templates.js +179 -0
  119. package/dist/core/siebel/sif-templates.js.map +1 -0
  120. package/dist/core/siebel/sif-to-graph.d.ts +20 -0
  121. package/dist/core/siebel/sif-to-graph.d.ts.map +1 -0
  122. package/dist/core/siebel/sif-to-graph.js +176 -0
  123. package/dist/core/siebel/sif-to-graph.js.map +1 -0
  124. package/dist/core/store/knowledge-store.d.ts +25 -0
  125. package/dist/core/store/knowledge-store.d.ts.map +1 -1
  126. package/dist/core/store/knowledge-store.js +72 -0
  127. package/dist/core/store/knowledge-store.js.map +1 -1
  128. package/dist/core/store/migrations.d.ts.map +1 -1
  129. package/dist/core/store/migrations.js +96 -0
  130. package/dist/core/store/migrations.js.map +1 -1
  131. package/dist/mcp/tools/index.d.ts.map +1 -1
  132. package/dist/mcp/tools/index.js +26 -0
  133. package/dist/mcp/tools/index.js.map +1 -1
  134. package/dist/mcp/tools/journey.d.ts +4 -0
  135. package/dist/mcp/tools/journey.d.ts.map +1 -0
  136. package/dist/mcp/tools/journey.js +154 -0
  137. package/dist/mcp/tools/journey.js.map +1 -0
  138. package/dist/mcp/tools/knowledge-feedback.d.ts +8 -0
  139. package/dist/mcp/tools/knowledge-feedback.d.ts.map +1 -0
  140. package/dist/mcp/tools/knowledge-feedback.js +35 -0
  141. package/dist/mcp/tools/knowledge-feedback.js.map +1 -0
  142. package/dist/mcp/tools/knowledge-stats.d.ts +9 -0
  143. package/dist/mcp/tools/knowledge-stats.d.ts.map +1 -0
  144. package/dist/mcp/tools/knowledge-stats.js +83 -0
  145. package/dist/mcp/tools/knowledge-stats.js.map +1 -0
  146. package/dist/mcp/tools/plan-sprint.d.ts.map +1 -1
  147. package/dist/mcp/tools/plan-sprint.js +7 -1
  148. package/dist/mcp/tools/plan-sprint.js.map +1 -1
  149. package/dist/mcp/tools/rag-context.d.ts.map +1 -1
  150. package/dist/mcp/tools/rag-context.js +43 -2
  151. package/dist/mcp/tools/rag-context.js.map +1 -1
  152. package/dist/mcp/tools/reindex-knowledge.d.ts.map +1 -1
  153. package/dist/mcp/tools/reindex-knowledge.js +23 -2
  154. package/dist/mcp/tools/reindex-knowledge.js.map +1 -1
  155. package/dist/mcp/tools/siebel-analyze.d.ts +8 -0
  156. package/dist/mcp/tools/siebel-analyze.d.ts.map +1 -0
  157. package/dist/mcp/tools/siebel-analyze.js +107 -0
  158. package/dist/mcp/tools/siebel-analyze.js.map +1 -0
  159. package/dist/mcp/tools/siebel-composer.d.ts +12 -0
  160. package/dist/mcp/tools/siebel-composer.d.ts.map +1 -0
  161. package/dist/mcp/tools/siebel-composer.js +59 -0
  162. package/dist/mcp/tools/siebel-composer.js.map +1 -0
  163. package/dist/mcp/tools/siebel-env.d.ts +8 -0
  164. package/dist/mcp/tools/siebel-env.d.ts.map +1 -0
  165. package/dist/mcp/tools/siebel-env.js +60 -0
  166. package/dist/mcp/tools/siebel-env.js.map +1 -0
  167. package/dist/mcp/tools/siebel-generate-sif.d.ts +8 -0
  168. package/dist/mcp/tools/siebel-generate-sif.d.ts.map +1 -0
  169. package/dist/mcp/tools/siebel-generate-sif.js +91 -0
  170. package/dist/mcp/tools/siebel-generate-sif.js.map +1 -0
  171. package/dist/mcp/tools/siebel-import-docs.d.ts +9 -0
  172. package/dist/mcp/tools/siebel-import-docs.d.ts.map +1 -0
  173. package/dist/mcp/tools/siebel-import-docs.js +106 -0
  174. package/dist/mcp/tools/siebel-import-docs.js.map +1 -0
  175. package/dist/mcp/tools/siebel-import-sif.d.ts +8 -0
  176. package/dist/mcp/tools/siebel-import-sif.d.ts.map +1 -0
  177. package/dist/mcp/tools/siebel-import-sif.js +68 -0
  178. package/dist/mcp/tools/siebel-import-sif.js.map +1 -0
  179. package/dist/mcp/tools/siebel-search.d.ts +8 -0
  180. package/dist/mcp/tools/siebel-search.d.ts.map +1 -0
  181. package/dist/mcp/tools/siebel-search.js +47 -0
  182. package/dist/mcp/tools/siebel-search.js.map +1 -0
  183. package/dist/mcp/tools/siebel-validate.d.ts +8 -0
  184. package/dist/mcp/tools/siebel-validate.d.ts.map +1 -0
  185. package/dist/mcp/tools/siebel-validate.js +107 -0
  186. package/dist/mcp/tools/siebel-validate.js.map +1 -0
  187. package/dist/mcp/tools/update-status.d.ts.map +1 -1
  188. package/dist/mcp/tools/update-status.js +22 -1
  189. package/dist/mcp/tools/update-status.js.map +1 -1
  190. package/dist/mcp/tools/validate.d.ts.map +1 -1
  191. package/dist/mcp/tools/validate.js +21 -0
  192. package/dist/mcp/tools/validate.js.map +1 -1
  193. package/dist/schemas/knowledge.schema.d.ts +66 -0
  194. package/dist/schemas/knowledge.schema.d.ts.map +1 -1
  195. package/dist/schemas/knowledge.schema.js +28 -0
  196. package/dist/schemas/knowledge.schema.js.map +1 -1
  197. package/dist/schemas/siebel.schema.d.ts +564 -0
  198. package/dist/schemas/siebel.schema.d.ts.map +1 -0
  199. package/dist/schemas/siebel.schema.js +197 -0
  200. package/dist/schemas/siebel.schema.js.map +1 -0
  201. package/dist/web/dashboard/dist/assets/{benchmark-tab-C5fwIqgM.js → benchmark-tab-WCcv55oB.js} +1 -1
  202. package/dist/web/dashboard/dist/assets/{context-tab-ChCyrRlr.js → context-tab-CYnMjkHN.js} +1 -1
  203. package/dist/web/dashboard/dist/assets/{gitnexus-tab-DnlGT63w.js → gitnexus-tab-Dj0DERUy.js} +1 -1
  204. package/dist/web/dashboard/dist/assets/graph-tab-tI93ZxxW.js +1 -0
  205. package/dist/web/dashboard/dist/assets/graph-utils-DeQEwmsr.js +1 -0
  206. package/dist/web/dashboard/dist/assets/index-B1PLsGu1.js +55 -0
  207. package/dist/web/dashboard/dist/assets/index-DKvjo_C5.css +1 -0
  208. package/dist/web/dashboard/dist/assets/{index-DlZhNCGR.js → index-NmopQGmQ.js} +1 -1
  209. package/dist/web/dashboard/dist/assets/{insights-tab-Cj4f85vS.js → insights-tab-X7u4J-xv.js} +1 -1
  210. package/dist/web/dashboard/dist/assets/journey-tab-Cpz6_3mB.js +1 -0
  211. package/dist/web/dashboard/dist/assets/{logs-tab-C4C2Vn8-.js → logs-tab-QB__4Xdl.js} +1 -1
  212. package/dist/web/dashboard/dist/assets/{memories-tab-NtNwoxbT.js → memories-tab-Dry9wz7q.js} +1 -1
  213. package/dist/web/dashboard/dist/assets/prd-backlog-tab-OXTksZKv.js +1 -0
  214. package/dist/web/dashboard/dist/assets/siebel-tab-x7OCuCmb.js +3 -0
  215. package/dist/web/dashboard/dist/assets/{skills-tab-CIj4z1Ol.js → skills-tab-DeUEKmpZ.js} +1 -1
  216. package/dist/web/dashboard/dist/assets/style-C-e8BTyP.js +7 -0
  217. package/dist/web/dashboard/dist/index.html +2 -2
  218. package/package.json +3 -1
  219. package/dist/web/dashboard/dist/assets/graph-tab-DjV9RD41.js +0 -1
  220. package/dist/web/dashboard/dist/assets/graph-utils-C6bvcT4d.js +0 -7
  221. package/dist/web/dashboard/dist/assets/index-DQqYFXms.css +0 -1
  222. package/dist/web/dashboard/dist/assets/index-dCyMex_p.js +0 -53
  223. package/dist/web/dashboard/dist/assets/prd-backlog-tab-Bxt7qiVG.js +0 -1
  224. /package/dist/web/dashboard/dist/assets/{graph-utils-BZV40eAE.css → style-BZV40eAE.css} +0 -0
@@ -0,0 +1,140 @@
1
+ /**
2
+ * Multi-Strategy Retrieval — combines FTS5, graph traversal, quality scoring,
3
+ * and recency boost into a unified search pipeline.
4
+ *
5
+ * Strategies:
6
+ * 1. FTS5 + BM25 (weight 0.4)
7
+ * 2. Graph traversal via knowledge_relations (weight 0.3)
8
+ * 3. Recency boost (weight 0.2)
9
+ * 4. Quality score multiplier (weight 0.1)
10
+ *
11
+ * Results merged via Reciprocal Rank Fusion (RRF).
12
+ */
13
+ import { KnowledgeStore } from "../store/knowledge-store.js";
14
+ import { findCrossSourceContext } from "./knowledge-linker.js";
15
+ import { logger } from "../utils/logger.js";
16
+ const RRF_K = 60;
17
+ /**
18
+ * Reciprocal Rank Fusion — merge multiple ranked lists into one.
19
+ * score = Σ(1 / (k + rank_i))
20
+ */
21
+ export function reciprocalRankFusion(rankedLists) {
22
+ const scores = new Map();
23
+ for (const list of rankedLists) {
24
+ for (let rank = 0; rank < list.length; rank++) {
25
+ const item = list[rank];
26
+ const current = scores.get(item.id) ?? 0;
27
+ scores.set(item.id, current + 1 / (RRF_K + rank + 1));
28
+ }
29
+ }
30
+ return Array.from(scores.entries())
31
+ .map(([id, rrfScore]) => ({ id, rrfScore }))
32
+ .sort((a, b) => b.rrfScore - a.rrfScore);
33
+ }
34
+ /**
35
+ * Multi-strategy knowledge search combining FTS, graph relations,
36
+ * quality scoring, and recency.
37
+ */
38
+ export function multiStrategySearch(db, query, options) {
39
+ const limit = options?.limit ?? 10;
40
+ const knowledgeStore = new KnowledgeStore(db);
41
+ // Strategy 1: FTS5 + BM25
42
+ let ftsResults = [];
43
+ try {
44
+ const raw = knowledgeStore.search(query, limit * 2);
45
+ ftsResults = raw.map((r) => ({ id: r.id, score: r.score }));
46
+ }
47
+ catch {
48
+ logger.debug("Multi-strategy FTS search returned no results");
49
+ }
50
+ // Strategy 2: Graph traversal — follow relations from FTS results
51
+ const graphResults = [];
52
+ if (ftsResults.length > 0) {
53
+ const relatedIds = new Set();
54
+ for (const ftsResult of ftsResults.slice(0, 3)) {
55
+ const related = findCrossSourceContext(db, ftsResult.id, 3);
56
+ for (const doc of related) {
57
+ if (!relatedIds.has(doc.id)) {
58
+ relatedIds.add(doc.id);
59
+ graphResults.push({ id: doc.id, score: 0.8 });
60
+ }
61
+ }
62
+ }
63
+ }
64
+ // Strategy 3: Recency boost
65
+ let recencyResults = [];
66
+ if (ftsResults.length > 0) {
67
+ const allIds = [...new Set([...ftsResults.map((r) => r.id), ...graphResults.map((r) => r.id)])];
68
+ recencyResults = allIds.map((id) => {
69
+ const row = db
70
+ .prepare("SELECT created_at FROM knowledge_documents WHERE id = ?")
71
+ .get(id);
72
+ if (!row)
73
+ return { id, score: 0 };
74
+ const ageMs = Date.now() - new Date(row.created_at).getTime();
75
+ const ageDays = ageMs / (24 * 60 * 60 * 1000);
76
+ const recencyScore = Math.pow(0.5, ageDays / 30);
77
+ return { id, score: recencyScore };
78
+ });
79
+ }
80
+ if (ftsResults.length === 0 && graphResults.length === 0) {
81
+ return [];
82
+ }
83
+ // Merge via RRF
84
+ const merged = reciprocalRankFusion([ftsResults, graphResults, recencyResults]);
85
+ // Fetch full docs and apply quality multiplier
86
+ const results = [];
87
+ const strategyMap = new Map();
88
+ for (const fts of ftsResults) {
89
+ const strategies = strategyMap.get(fts.id) ?? [];
90
+ strategies.push("fts");
91
+ strategyMap.set(fts.id, strategies);
92
+ }
93
+ for (const gr of graphResults) {
94
+ const strategies = strategyMap.get(gr.id) ?? [];
95
+ strategies.push("graph");
96
+ strategyMap.set(gr.id, strategies);
97
+ }
98
+ for (const item of merged.slice(0, limit)) {
99
+ const doc = knowledgeStore.getById(item.id);
100
+ if (!doc)
101
+ continue;
102
+ const qualityScore = db
103
+ .prepare("SELECT quality_score FROM knowledge_documents WHERE id = ?")
104
+ .get(item.id)?.quality_score ?? 0.5;
105
+ const finalScore = item.rrfScore * (0.5 + 0.5 * qualityScore);
106
+ results.push({
107
+ id: doc.id,
108
+ sourceType: doc.sourceType,
109
+ sourceId: doc.sourceId,
110
+ title: doc.title,
111
+ content: doc.content,
112
+ score: Math.round(finalScore * 10000) / 10000,
113
+ qualityScore,
114
+ strategies: strategyMap.get(doc.id) ?? ["rrf"],
115
+ });
116
+ }
117
+ // Sort by final score
118
+ results.sort((a, b) => b.score - a.score);
119
+ // Source diversity enforcement: ensure at least 2 source types in top-5
120
+ if (results.length > 3) {
121
+ const topSourceTypes = new Set(results.slice(0, 3).map((r) => r.sourceType));
122
+ if (topSourceTypes.size < 2) {
123
+ // Find a result with a different source type and swap it into top-3
124
+ const differentIdx = results.findIndex((r, i) => i >= 3 && !topSourceTypes.has(r.sourceType));
125
+ if (differentIdx > 0) {
126
+ const temp = results[2];
127
+ results[2] = results[differentIdx];
128
+ results[differentIdx] = temp;
129
+ }
130
+ }
131
+ }
132
+ logger.info("Multi-strategy search complete", {
133
+ query,
134
+ ftsCount: ftsResults.length,
135
+ graphCount: graphResults.length,
136
+ resultCount: results.length,
137
+ });
138
+ return results;
139
+ }
140
+ //# sourceMappingURL=multi-strategy-retrieval.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-strategy-retrieval.js","sourceRoot":"","sources":["../../../src/core/rag/multi-strategy-retrieval.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,17 @@ export declare function indexAllEmbeddings(store: SqliteStore, embeddingStore: E
40
40
  nodes: number;
41
41
  knowledge: number;
42
42
  }>;
43
+ /**
44
+ * Incremental index — embed only the specified knowledge documents
45
+ * without rebuilding the full vocabulary.
46
+ *
47
+ * Uses existing vocabulary if available (from a prior full index).
48
+ * Falls back to full index if no vocabulary exists.
49
+ */
50
+ export declare function incrementalIndex(store: SqliteStore, embeddingStore: EmbeddingStore, docIds: string[]): Promise<{
51
+ indexed: number;
52
+ fullReindex: boolean;
53
+ }>;
43
54
  /**
44
55
  * Semantic search using embeddings.
45
56
  * Embeds the query and finds similar documents.
@@ -1 +1 @@
1
- {"version":3,"file":"rag-pipeline.d.ts","sourceRoot":"","sources":["../../../src/core/rag/rag-pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAgG7E;;;GAGG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,GAAG,CAAoC;IAE/C,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;OAEG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,GAAG,IAAI;IAMhC;;;OAGG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;CAM9B;AAsCD;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,WAAW,EAClB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,MAAM,CAAC,CAgDjB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,WAAW,EAClB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAwE/C;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAClC,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAS7B"}
1
+ {"version":3,"file":"rag-pipeline.d.ts","sourceRoot":"","sources":["../../../src/core/rag/rag-pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAgG7E;;;GAGG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,GAAG,CAAoC;IAE/C,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;OAEG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,GAAG,IAAI;IAMhC;;;OAGG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;CAM9B;AAsCD;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,WAAW,EAClB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,MAAM,CAAC,CAgDjB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,WAAW,EAClB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAwE/C;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,WAAW,EAClB,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,MAAM,EAAE,GACf,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,CAAC,CAqCpD;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAClC,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAS7B"}
@@ -260,6 +260,45 @@ export async function indexAllEmbeddings(store, embeddingStore) {
260
260
  logger.info(`Indexed all embeddings (vocab size: ${vectorizer.vocabSize})`, { nodes: indexedNodes, knowledge: indexedKnowledge });
261
261
  return { nodes: indexedNodes, knowledge: indexedKnowledge };
262
262
  }
263
+ /**
264
+ * Incremental index — embed only the specified knowledge documents
265
+ * without rebuilding the full vocabulary.
266
+ *
267
+ * Uses existing vocabulary if available (from a prior full index).
268
+ * Falls back to full index if no vocabulary exists.
269
+ */
270
+ export async function incrementalIndex(store, embeddingStore, docIds) {
271
+ if (docIds.length === 0) {
272
+ return { indexed: 0, fullReindex: false };
273
+ }
274
+ // If no active vocabulary, do a full index instead
275
+ if (!activeVectorizer || activeVectorizer.vocabSize === 0) {
276
+ logger.info("No active vocabulary — performing full index for incremental request");
277
+ const result = await indexAllEmbeddings(store, embeddingStore);
278
+ return { indexed: result.nodes + result.knowledge, fullReindex: true };
279
+ }
280
+ const knowledgeStore = new KnowledgeStore(store.getDb());
281
+ let indexed = 0;
282
+ for (const docId of docIds) {
283
+ const doc = knowledgeStore.getById(docId);
284
+ if (!doc) {
285
+ logger.debug("Incremental index: doc not found, skipping", { docId });
286
+ continue;
287
+ }
288
+ const text = [doc.title, doc.content].join(" | ");
289
+ const vector = activeVectorizer.embed(text);
290
+ embeddingStore.upsert({
291
+ id: `knowledge:${doc.id}`,
292
+ source: "knowledge",
293
+ sourceId: doc.id,
294
+ text,
295
+ embedding: vector,
296
+ });
297
+ indexed++;
298
+ }
299
+ logger.info("Incremental embedding index complete", { indexed, total: docIds.length });
300
+ return { indexed, fullReindex: false };
301
+ }
263
302
  /**
264
303
  * Semantic search using embeddings.
265
304
  * Embeds the query and finds similar documents.
@@ -1 +1 @@
1
- {"version":3,"file":"rag-pipeline.js","sourceRoot":"","sources":["../../../src/core/rag/rag-pipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rag-pipeline.js","sourceRoot":"","sources":["../../../src/core/rag/rag-pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,mDAAmD;AAEnD;;GAEG;AACH,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;IACxB,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO;IACnE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IACnE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;IAClE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS;IAChE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK;IACtE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM;IACpE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM;IACrE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAClE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IACnE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;IACnE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK;CACtC,CAAC,CAAC;AAEH,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,IAAI;SACR,WAAW,EAAE;SACb,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC;SAC5B,KAAK,CAAC,KAAK,CAAC;SACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,SAAqB;IAC5C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IAEnC,KAAK,MAAM,MAAM,IAAI,SAAS,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/B,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YAC1B,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;IACzB,CAAC;IAED,2BAA2B;IAC3B,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;IAC3B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC;QACjC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe;IAClE,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,MAAgB,EAAE,KAA0B,EAAE,GAAwB;IAChG,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAE7C,iBAAiB;IACjB,MAAM,EAAE,GAAG,IAAI,GAAG,EAAkB,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,SAAS;IACT,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;QAClD,CAAC;IACH,CAAC;IAED,eAAe;IACf,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,MAAM,CAAC,IAAI,MAAM;QAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;IACtC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,eAAe;IAClB,KAAK,GAA+B,IAAI,CAAC;IACzC,GAAG,GAA+B,IAAI,CAAC;IAE/C,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,SAAqB;QACvB,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;IACxB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAY;QAChB,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAClE,CAAC;CACF;AAED;;;GAGG;AACH,SAAS,SAAS,CAAC,IAAY,EAAE,GAAW;IAC1C,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE9B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;QACjC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,eAAe;IACf,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,MAAM,CAAC,IAAI,MAAM;QAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;IACtC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,mDAAmD;AAEnD,2DAA2D;AAC3D,0DAA0D;AAC1D,IAAI,gBAAgB,GAA2B,IAAI,CAAC;AAEpD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,KAAkB,EAClB,cAA8B;IAE9B,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAClC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QAChD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,uBAAuB;IACvB,MAAM,SAAS,GAA0D,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1F,MAAM,IAAI,GAAG;YACX,IAAI,CAAC,KAAK;YACV,IAAI,CAAC,WAAW,IAAI,EAAE;YACtB,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAC3B,IAAI,CAAC,IAAI;SACV,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE9B,OAAO;YACL,EAAE,EAAE,QAAQ,IAAI,CAAC,EAAE,EAAE;YACrB,IAAI;YACJ,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC;SACvB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,sCAAsC;IACtC,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/C,gBAAgB,GAAG,UAAU,CAAC;IAE9B,gCAAgC;IAChC,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAE1C,cAAc,CAAC,MAAM,CAAC;YACpB,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;YACrC,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,SAAS,EAAE,MAAM;SAClB,CAAC,CAAC;QACH,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACtD,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;IAC9F,MAAM,CAAC,IAAI,CAAC,WAAW,OAAO,iCAAiC,UAAU,CAAC,SAAS,GAAG,CAAC,CAAC;IACxF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAkB,EAClB,cAA8B;IAE9B,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAClC,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAE5D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;QACpD,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IACpC,CAAC;IAED,iCAAiC;IACjC,MAAM,YAAY,GAA0D,EAAE,CAAC;IAE/E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG;YACX,IAAI,CAAC,KAAK;YACV,IAAI,CAAC,WAAW,IAAI,EAAE;YACtB,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAC3B,IAAI,CAAC,IAAI;SACV,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE9B,YAAY,CAAC,IAAI,CAAC;YAChB,EAAE,EAAE,QAAQ,IAAI,CAAC,EAAE,EAAE;YACrB,IAAI;YACJ,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC;SACvB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAElD,YAAY,CAAC,IAAI,CAAC;YAChB,EAAE,EAAE,aAAa,GAAG,CAAC,EAAE,EAAE;YACzB,IAAI;YACJ,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC;SACvB,CAAC,CAAC;IACL,CAAC;IAED,2BAA2B;IAC3B,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD,gBAAgB,GAAG,UAAU,CAAC;IAE9B,gCAAgC;IAChC,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,gBAAgB,GAAG,CAAC,CAAC;IAEzB,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAE1C,cAAc,CAAC,MAAM,CAAC;YACpB,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW;YACrC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;YAClD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,SAAS,EAAE,MAAM;SAClB,CAAC,CAAC;QAEH,IAAI,MAAM;YAAE,YAAY,EAAE,CAAC;;YACtB,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACtD,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC,CAAC;IACnH,MAAM,CAAC,IAAI,CACT,uCAAuC,UAAU,CAAC,SAAS,GAAG,EAC9D,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,CACrD,CAAC;IAEF,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAC9D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAAkB,EAClB,cAA8B,EAC9B,MAAgB;IAEhB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;IAC5C,CAAC;IAED,mDAAmD;IACnD,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;QACpF,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACzE,CAAC;IAED,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACzD,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACtE,SAAS;QACX,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE5C,cAAc,CAAC,MAAM,CAAC;YACpB,EAAE,EAAE,aAAa,GAAG,CAAC,EAAE,EAAE;YACzB,MAAM,EAAE,WAAW;YACnB,QAAQ,EAAE,GAAG,CAAC,EAAE;YAChB,IAAI;YACJ,SAAS,EAAE,MAAM;SAClB,CAAC,CAAC;QACH,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACvF,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;AACzC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,cAA8B,EAC9B,KAAa,EACb,QAAgB,EAAE;IAElB,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,gBAAgB,IAAI,IAAI,eAAe,EAAE,CAAC;IAC7D,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,cAAc,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IAEtD,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IACnG,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Siebel Indexer — indexes parsed SIF content into the knowledge store
3
+ * for RAG retrieval during Siebel development workflows.
4
+ */
5
+ import { KnowledgeStore } from "../store/knowledge-store.js";
6
+ import type { SiebelSifParseResult } from "../../schemas/siebel.schema.js";
7
+ export interface SiebelIndexResult {
8
+ documentsIndexed: number;
9
+ sourceFile: string;
10
+ }
11
+ /**
12
+ * Index parsed SIF content into the knowledge store.
13
+ * Each Siebel object becomes a knowledge document for RAG retrieval.
14
+ */
15
+ export declare function indexSifContent(knowledgeStore: KnowledgeStore, parseResult: SiebelSifParseResult): SiebelIndexResult;
16
+ //# sourceMappingURL=siebel-indexer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"siebel-indexer.d.ts","sourceRoot":"","sources":["../../../src/core/rag/siebel-indexer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,KAAK,EAAE,oBAAoB,EAAgB,MAAM,gCAAgC,CAAC;AAEzF,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,oBAAoB,GAChC,iBAAiB,CAsCnB"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Siebel Indexer — indexes parsed SIF content into the knowledge store
3
+ * for RAG retrieval during Siebel development workflows.
4
+ */
5
+ import { logger } from "../utils/logger.js";
6
+ /**
7
+ * Index parsed SIF content into the knowledge store.
8
+ * Each Siebel object becomes a knowledge document for RAG retrieval.
9
+ */
10
+ export function indexSifContent(knowledgeStore, parseResult) {
11
+ const { metadata, objects, dependencies } = parseResult;
12
+ if (objects.length === 0) {
13
+ logger.info("No Siebel objects to index", { sourceFile: metadata.fileName });
14
+ return { documentsIndexed: 0, sourceFile: metadata.fileName };
15
+ }
16
+ const sourceId = `siebel_sif:${metadata.fileName}`;
17
+ // Remove previous version to re-index fresh content
18
+ knowledgeStore.deleteBySource("siebel_sif", sourceId);
19
+ // Build content for each object
20
+ const chunks = objects.map((obj, index) => ({
21
+ sourceType: "siebel_sif",
22
+ sourceId,
23
+ title: `Siebel ${obj.type}: ${obj.name}`,
24
+ content: buildObjectContent(obj, dependencies.filter((d) => d.from.name === obj.name || d.to.name === obj.name)),
25
+ chunkIndex: index,
26
+ metadata: {
27
+ siebelType: obj.type,
28
+ siebelProject: obj.project,
29
+ fileName: metadata.fileName,
30
+ indexedAt: new Date().toISOString(),
31
+ },
32
+ }));
33
+ const docs = knowledgeStore.insertChunks(chunks);
34
+ logger.info("Siebel SIF content indexed", {
35
+ sourceFile: metadata.fileName,
36
+ documents: String(docs.length),
37
+ });
38
+ return { documentsIndexed: docs.length, sourceFile: metadata.fileName };
39
+ }
40
+ /**
41
+ * Build searchable text content from a Siebel object.
42
+ */
43
+ function buildObjectContent(obj, relatedDeps) {
44
+ const parts = [];
45
+ parts.push(`# ${obj.type.replace(/_/g, " ").toUpperCase()}: ${obj.name}`);
46
+ if (obj.project) {
47
+ parts.push(`Project: ${obj.project}`);
48
+ }
49
+ if (obj.properties.length > 0) {
50
+ parts.push("## Properties");
51
+ for (const prop of obj.properties) {
52
+ parts.push(`- ${prop.name}: ${prop.value}`);
53
+ }
54
+ }
55
+ if (obj.children.length > 0) {
56
+ parts.push("## Children");
57
+ for (const child of obj.children) {
58
+ const childProps = child.properties.map((p) => `${p.name}=${p.value}`).join(", ");
59
+ parts.push(`- ${child.type}: ${child.name}${childProps ? ` (${childProps})` : ""}`);
60
+ }
61
+ }
62
+ if (relatedDeps.length > 0) {
63
+ parts.push("## Dependencies");
64
+ for (const dep of relatedDeps) {
65
+ if (dep.from.name === obj.name) {
66
+ parts.push(`- ${dep.relationType} → ${dep.to.type}: ${dep.to.name}`);
67
+ }
68
+ else {
69
+ parts.push(`- ${dep.from.type}: ${dep.from.name} ${dep.relationType} → this`);
70
+ }
71
+ }
72
+ }
73
+ return parts.join("\n");
74
+ }
75
+ //# sourceMappingURL=siebel-indexer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"siebel-indexer.js","sourceRoot":"","sources":["../../../src/core/rag/siebel-indexer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Swagger Indexer — indexes parsed Swagger/WSDL content into the knowledge store
3
+ * for RAG retrieval during Siebel Integration Object generation.
4
+ */
5
+ import { KnowledgeStore } from "../store/knowledge-store.js";
6
+ import type { SwaggerParseResult } from "../parser/read-swagger.js";
7
+ export interface SwaggerIndexResult {
8
+ documentsIndexed: number;
9
+ fileName: string;
10
+ }
11
+ /**
12
+ * Index parsed Swagger/WSDL content into the knowledge store.
13
+ * Each endpoint and schema becomes a knowledge document.
14
+ */
15
+ export declare function indexSwaggerContent(knowledgeStore: KnowledgeStore, parseResult: SwaggerParseResult, fileName: string): SwaggerIndexResult;
16
+ //# sourceMappingURL=swagger-indexer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swagger-indexer.d.ts","sourceRoot":"","sources":["../../../src/core/rag/swagger-indexer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,KAAK,EAAE,kBAAkB,EAAkC,MAAM,2BAA2B,CAAC;AAEpG,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,kBAAkB,EAC/B,QAAQ,EAAE,MAAM,GACf,kBAAkB,CA0EpB"}
@@ -0,0 +1,119 @@
1
+ /**
2
+ * Swagger Indexer — indexes parsed Swagger/WSDL content into the knowledge store
3
+ * for RAG retrieval during Siebel Integration Object generation.
4
+ */
5
+ import { logger } from "../utils/logger.js";
6
+ /**
7
+ * Index parsed Swagger/WSDL content into the knowledge store.
8
+ * Each endpoint and schema becomes a knowledge document.
9
+ */
10
+ export function indexSwaggerContent(knowledgeStore, parseResult, fileName) {
11
+ const { endpoints, schemas, title, version, format } = parseResult;
12
+ if (endpoints.length === 0 && schemas.length === 0) {
13
+ logger.info("No Swagger content to index", { fileName });
14
+ return { documentsIndexed: 0, fileName };
15
+ }
16
+ const sourceId = `swagger:${fileName}`;
17
+ // Remove previous version to re-index fresh content
18
+ knowledgeStore.deleteBySource("swagger", sourceId);
19
+ const chunks = [];
20
+ let chunkIndex = 0;
21
+ // Index each endpoint
22
+ for (const endpoint of endpoints) {
23
+ chunks.push({
24
+ sourceType: "swagger",
25
+ sourceId,
26
+ title: `${endpoint.method} ${endpoint.path}`,
27
+ content: buildEndpointContent(endpoint, title),
28
+ chunkIndex: chunkIndex++,
29
+ metadata: {
30
+ apiTitle: title,
31
+ apiVersion: version,
32
+ apiFormat: format,
33
+ method: endpoint.method,
34
+ path: endpoint.path,
35
+ operationId: endpoint.operationId,
36
+ fileName,
37
+ indexedAt: new Date().toISOString(),
38
+ },
39
+ });
40
+ }
41
+ // Index each schema
42
+ for (const schema of schemas) {
43
+ chunks.push({
44
+ sourceType: "swagger",
45
+ sourceId,
46
+ title: `Schema: ${schema.name}`,
47
+ content: buildSchemaContent(schema, title),
48
+ chunkIndex: chunkIndex++,
49
+ metadata: {
50
+ apiTitle: title,
51
+ apiVersion: version,
52
+ apiFormat: format,
53
+ schemaName: schema.name,
54
+ fileName,
55
+ indexedAt: new Date().toISOString(),
56
+ },
57
+ });
58
+ }
59
+ const docs = knowledgeStore.insertChunks(chunks);
60
+ logger.info("Swagger content indexed", {
61
+ fileName,
62
+ endpoints: String(endpoints.length),
63
+ schemas: String(schemas.length),
64
+ documents: String(docs.length),
65
+ });
66
+ return { documentsIndexed: docs.length, fileName };
67
+ }
68
+ /**
69
+ * Build searchable text content from a Swagger endpoint.
70
+ */
71
+ function buildEndpointContent(endpoint, apiTitle) {
72
+ const parts = [];
73
+ parts.push(`# API Endpoint: ${endpoint.method} ${endpoint.path}`);
74
+ parts.push(`API: ${apiTitle}`);
75
+ if (endpoint.summary) {
76
+ parts.push(`Summary: ${endpoint.summary}`);
77
+ }
78
+ if (endpoint.operationId) {
79
+ parts.push(`Operation ID: ${endpoint.operationId}`);
80
+ }
81
+ if (endpoint.parameters.length > 0) {
82
+ parts.push("## Parameters");
83
+ for (const param of endpoint.parameters) {
84
+ const req = param.required ? " (required)" : "";
85
+ parts.push(`- ${param.name}: ${param.type} [${param.location}]${req}`);
86
+ }
87
+ }
88
+ if (endpoint.requestBody) {
89
+ parts.push(`## Request Body: ${endpoint.requestBody}`);
90
+ }
91
+ if (endpoint.responses.length > 0) {
92
+ parts.push("## Responses");
93
+ for (const resp of endpoint.responses) {
94
+ parts.push(`- ${resp}`);
95
+ }
96
+ }
97
+ return parts.join("\n");
98
+ }
99
+ /**
100
+ * Build searchable text content from a Swagger schema.
101
+ */
102
+ function buildSchemaContent(schema, apiTitle) {
103
+ const parts = [];
104
+ parts.push(`# Schema: ${schema.name}`);
105
+ parts.push(`API: ${apiTitle}`);
106
+ parts.push(`Type: ${schema.type}`);
107
+ if (schema.properties.length > 0) {
108
+ parts.push("## Properties");
109
+ for (const prop of schema.properties) {
110
+ const req = prop.required ? " (required)" : "";
111
+ parts.push(`- ${prop.name}: ${prop.type}${req}`);
112
+ }
113
+ }
114
+ if (schema.required.length > 0) {
115
+ parts.push(`## Required Fields: ${schema.required.join(", ")}`);
116
+ }
117
+ return parts.join("\n");
118
+ }
119
+ //# sourceMappingURL=swagger-indexer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swagger-indexer.js","sourceRoot":"","sources":["../../../src/core/rag/swagger-indexer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Validation Indexer — captures AC validation results into knowledge store.
3
+ * Triggered when the validate tool completes with action "ac".
4
+ */
5
+ import type { KnowledgeStore } from "../store/knowledge-store.js";
6
+ export interface AcResult {
7
+ criterion: string;
8
+ passed: boolean;
9
+ reason?: string;
10
+ }
11
+ export interface ValidationInput {
12
+ nodeId: string;
13
+ acResults: AcResult[];
14
+ overallScore: number;
15
+ }
16
+ export interface IndexResult {
17
+ documentsIndexed: number;
18
+ }
19
+ /**
20
+ * Index AC validation results into the knowledge store.
21
+ */
22
+ export declare function indexAcValidationResult(store: KnowledgeStore, input: ValidationInput): IndexResult;
23
+ //# sourceMappingURL=validation-indexer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation-indexer.d.ts","sourceRoot":"","sources":["../../../src/core/rag/validation-indexer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAGlE,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,eAAe,GACrB,WAAW,CA8Bb"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Validation Indexer — captures AC validation results into knowledge store.
3
+ * Triggered when the validate tool completes with action "ac".
4
+ */
5
+ import { logger } from "../utils/logger.js";
6
+ /**
7
+ * Index AC validation results into the knowledge store.
8
+ */
9
+ export function indexAcValidationResult(store, input) {
10
+ const passCount = input.acResults.filter((r) => r.passed).length;
11
+ const passRate = input.acResults.length > 0 ? passCount / input.acResults.length : 0;
12
+ const lines = input.acResults.map((r) => {
13
+ const status = r.passed ? "PASS" : "FAIL";
14
+ const reason = r.reason ? ` — ${r.reason}` : "";
15
+ return `- [${status}] ${r.criterion}${reason}`;
16
+ });
17
+ const content = `# Validation Results: ${input.nodeId}\n\nScore: ${input.overallScore}\nPass rate: ${Math.round(passRate * 100)}%\n\n${lines.join("\n")}`;
18
+ store.insert({
19
+ sourceType: "validation_result",
20
+ sourceId: `validation:${input.nodeId}:${new Date().toISOString()}`,
21
+ title: `Validation: ${input.nodeId} (${Math.round(passRate * 100)}%)`,
22
+ content,
23
+ metadata: {
24
+ nodeId: input.nodeId,
25
+ passRate,
26
+ acCount: input.acResults.length,
27
+ overallScore: input.overallScore,
28
+ phase: "VALIDATE",
29
+ indexedAt: new Date().toISOString(),
30
+ },
31
+ });
32
+ logger.info("Validation result indexed", { nodeId: input.nodeId, passRate });
33
+ return { documentsIndexed: 1 };
34
+ }
35
+ //# sourceMappingURL=validation-indexer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation-indexer.js","sourceRoot":"","sources":["../../../src/core/rag/validation-indexer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAkB5C;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,KAAqB,EACrB,KAAsB;IAEtB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;IACjE,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAErF,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACtC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;QAC1C,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,OAAO,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,GAAG,MAAM,EAAE,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,yBAAyB,KAAK,CAAC,MAAM,cAAc,KAAK,CAAC,YAAY,gBAAgB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAE1J,KAAK,CAAC,MAAM,CAAC;QACX,UAAU,EAAE,mBAAmB;QAC/B,QAAQ,EAAE,cAAc,KAAK,CAAC,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE;QAClE,KAAK,EAAE,eAAe,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI;QACrE,OAAO;QACP,QAAQ,EAAE;YACR,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,QAAQ;YACR,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM;YAC/B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC;KACF,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IAE7E,OAAO,EAAE,gBAAgB,EAAE,CAAC,EAAE,CAAC;AACjC,CAAC"}