@code-rag/core 0.1.0 → 0.1.2

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 (205) hide show
  1. package/package.json +11 -11
  2. package/dist/auth/audit-log.js.map +0 -1
  3. package/dist/auth/audit-log.test.d.ts +0 -1
  4. package/dist/auth/audit-log.test.js +0 -261
  5. package/dist/auth/audit-log.test.js.map +0 -1
  6. package/dist/auth/index.js.map +0 -1
  7. package/dist/auth/oidc-provider.js.map +0 -1
  8. package/dist/auth/oidc-provider.test.d.ts +0 -1
  9. package/dist/auth/oidc-provider.test.js +0 -520
  10. package/dist/auth/oidc-provider.test.js.map +0 -1
  11. package/dist/auth/rbac.js.map +0 -1
  12. package/dist/auth/rbac.test.d.ts +0 -1
  13. package/dist/auth/rbac.test.js +0 -224
  14. package/dist/auth/rbac.test.js.map +0 -1
  15. package/dist/auth/saml-provider.js.map +0 -1
  16. package/dist/auth/saml-provider.test.d.ts +0 -1
  17. package/dist/auth/saml-provider.test.js +0 -422
  18. package/dist/auth/saml-provider.test.js.map +0 -1
  19. package/dist/auth/types.js.map +0 -1
  20. package/dist/auth/types.test.d.ts +0 -1
  21. package/dist/auth/types.test.js +0 -147
  22. package/dist/auth/types.test.js.map +0 -1
  23. package/dist/backlog/ab-reference-scanner.js.map +0 -1
  24. package/dist/backlog/ab-reference-scanner.test.d.ts +0 -1
  25. package/dist/backlog/ab-reference-scanner.test.js +0 -83
  26. package/dist/backlog/ab-reference-scanner.test.js.map +0 -1
  27. package/dist/backlog/azure-devops-provider.js.map +0 -1
  28. package/dist/backlog/backlog-provider.js.map +0 -1
  29. package/dist/backlog/backlog-provider.test.d.ts +0 -1
  30. package/dist/backlog/backlog-provider.test.js +0 -426
  31. package/dist/backlog/backlog-provider.test.js.map +0 -1
  32. package/dist/backlog/clickup-provider.js.map +0 -1
  33. package/dist/backlog/clickup-provider.test.d.ts +0 -1
  34. package/dist/backlog/clickup-provider.test.js +0 -426
  35. package/dist/backlog/clickup-provider.test.js.map +0 -1
  36. package/dist/backlog/clickup-reference-scanner.js.map +0 -1
  37. package/dist/backlog/clickup-reference-scanner.test.d.ts +0 -1
  38. package/dist/backlog/clickup-reference-scanner.test.js +0 -92
  39. package/dist/backlog/clickup-reference-scanner.test.js.map +0 -1
  40. package/dist/backlog/code-linker.js.map +0 -1
  41. package/dist/backlog/code-linker.test.d.ts +0 -1
  42. package/dist/backlog/code-linker.test.js +0 -325
  43. package/dist/backlog/code-linker.test.js.map +0 -1
  44. package/dist/backlog/index.js.map +0 -1
  45. package/dist/backlog/jira-provider.js.map +0 -1
  46. package/dist/backlog/jira-provider.test.d.ts +0 -1
  47. package/dist/backlog/jira-provider.test.js +0 -449
  48. package/dist/backlog/jira-provider.test.js.map +0 -1
  49. package/dist/backlog/jira-reference-scanner.js.map +0 -1
  50. package/dist/backlog/jira-reference-scanner.test.d.ts +0 -1
  51. package/dist/backlog/jira-reference-scanner.test.js +0 -127
  52. package/dist/backlog/jira-reference-scanner.test.js.map +0 -1
  53. package/dist/backlog/types.js.map +0 -1
  54. package/dist/chunker/ast-chunker.js.map +0 -1
  55. package/dist/chunker/ast-chunker.test.d.ts +0 -1
  56. package/dist/chunker/ast-chunker.test.js +0 -391
  57. package/dist/chunker/ast-chunker.test.js.map +0 -1
  58. package/dist/chunker/chunker.js.map +0 -1
  59. package/dist/chunker/index.js.map +0 -1
  60. package/dist/config/config-parser.js.map +0 -1
  61. package/dist/config/config-parser.test.d.ts +0 -1
  62. package/dist/config/config-parser.test.js +0 -699
  63. package/dist/config/config-parser.test.js.map +0 -1
  64. package/dist/docs/confluence-provider.js.map +0 -1
  65. package/dist/docs/confluence-provider.test.d.ts +0 -1
  66. package/dist/docs/confluence-provider.test.js +0 -765
  67. package/dist/docs/confluence-provider.test.js.map +0 -1
  68. package/dist/docs/index.js.map +0 -1
  69. package/dist/docs/sharepoint-provider.js.map +0 -1
  70. package/dist/docs/sharepoint-provider.test.d.ts +0 -1
  71. package/dist/docs/sharepoint-provider.test.js +0 -873
  72. package/dist/docs/sharepoint-provider.test.js.map +0 -1
  73. package/dist/embedding/bm25-index.js.map +0 -1
  74. package/dist/embedding/bm25-index.test.d.ts +0 -1
  75. package/dist/embedding/bm25-index.test.js +0 -289
  76. package/dist/embedding/bm25-index.test.js.map +0 -1
  77. package/dist/embedding/hybrid-search.js.map +0 -1
  78. package/dist/embedding/hybrid-search.test.d.ts +0 -1
  79. package/dist/embedding/hybrid-search.test.js +0 -266
  80. package/dist/embedding/hybrid-search.test.js.map +0 -1
  81. package/dist/embedding/index.js.map +0 -1
  82. package/dist/embedding/lancedb-store.js.map +0 -1
  83. package/dist/embedding/lancedb-store.test.d.ts +0 -1
  84. package/dist/embedding/lancedb-store.test.js +0 -268
  85. package/dist/embedding/lancedb-store.test.js.map +0 -1
  86. package/dist/embedding/model-lifecycle-manager.js.map +0 -1
  87. package/dist/embedding/model-lifecycle-manager.test.d.ts +0 -1
  88. package/dist/embedding/model-lifecycle-manager.test.js +0 -642
  89. package/dist/embedding/model-lifecycle-manager.test.js.map +0 -1
  90. package/dist/embedding/ollama-embedding-provider.js.map +0 -1
  91. package/dist/embedding/ollama-embedding-provider.test.d.ts +0 -1
  92. package/dist/embedding/ollama-embedding-provider.test.js +0 -198
  93. package/dist/embedding/ollama-embedding-provider.test.js.map +0 -1
  94. package/dist/embedding/openai-compatible-embedding-provider.js.map +0 -1
  95. package/dist/embedding/openai-compatible-embedding-provider.test.d.ts +0 -1
  96. package/dist/embedding/openai-compatible-embedding-provider.test.js +0 -456
  97. package/dist/embedding/openai-compatible-embedding-provider.test.js.map +0 -1
  98. package/dist/embedding/qdrant-store.js.map +0 -1
  99. package/dist/embedding/qdrant-store.test.d.ts +0 -1
  100. package/dist/embedding/qdrant-store.test.js +0 -359
  101. package/dist/embedding/qdrant-store.test.js.map +0 -1
  102. package/dist/enrichment/index.js.map +0 -1
  103. package/dist/enrichment/nl-enricher.js.map +0 -1
  104. package/dist/enrichment/nl-enricher.test.d.ts +0 -1
  105. package/dist/enrichment/nl-enricher.test.js +0 -154
  106. package/dist/enrichment/nl-enricher.test.js.map +0 -1
  107. package/dist/enrichment/ollama-client.js.map +0 -1
  108. package/dist/enrichment/ollama-client.test.d.ts +0 -1
  109. package/dist/enrichment/ollama-client.test.js +0 -129
  110. package/dist/enrichment/ollama-client.test.js.map +0 -1
  111. package/dist/git/git-client.js.map +0 -1
  112. package/dist/git/git-client.test.d.ts +0 -1
  113. package/dist/git/git-client.test.js +0 -200
  114. package/dist/git/git-client.test.js.map +0 -1
  115. package/dist/git/ignore-filter.js.map +0 -1
  116. package/dist/git/ignore-filter.test.d.ts +0 -1
  117. package/dist/git/ignore-filter.test.js +0 -87
  118. package/dist/git/ignore-filter.test.js.map +0 -1
  119. package/dist/git/index.js.map +0 -1
  120. package/dist/git/simple-git-client.js.map +0 -1
  121. package/dist/graph/cross-repo-resolver.js.map +0 -1
  122. package/dist/graph/cross-repo-resolver.test.d.ts +0 -1
  123. package/dist/graph/cross-repo-resolver.test.js +0 -548
  124. package/dist/graph/cross-repo-resolver.test.js.map +0 -1
  125. package/dist/graph/dependency-graph.js.map +0 -1
  126. package/dist/graph/dependency-graph.test.d.ts +0 -1
  127. package/dist/graph/dependency-graph.test.js +0 -276
  128. package/dist/graph/dependency-graph.test.js.map +0 -1
  129. package/dist/graph/graph-builder.js.map +0 -1
  130. package/dist/graph/graph-builder.test.d.ts +0 -1
  131. package/dist/graph/graph-builder.test.js +0 -178
  132. package/dist/graph/graph-builder.test.js.map +0 -1
  133. package/dist/graph/import-resolver.js.map +0 -1
  134. package/dist/graph/import-resolver.test.d.ts +0 -1
  135. package/dist/graph/import-resolver.test.js +0 -282
  136. package/dist/graph/import-resolver.test.js.map +0 -1
  137. package/dist/graph/index.js.map +0 -1
  138. package/dist/index.js.map +0 -1
  139. package/dist/indexer/file-scanner.js.map +0 -1
  140. package/dist/indexer/file-scanner.test.d.ts +0 -1
  141. package/dist/indexer/file-scanner.test.js +0 -110
  142. package/dist/indexer/file-scanner.test.js.map +0 -1
  143. package/dist/indexer/incremental-indexer.js.map +0 -1
  144. package/dist/indexer/incremental-indexer.test.d.ts +0 -1
  145. package/dist/indexer/incremental-indexer.test.js +0 -266
  146. package/dist/indexer/incremental-indexer.test.js.map +0 -1
  147. package/dist/indexer/index-check.js.map +0 -1
  148. package/dist/indexer/index-check.test.d.ts +0 -1
  149. package/dist/indexer/index-check.test.js +0 -100
  150. package/dist/indexer/index-check.test.js.map +0 -1
  151. package/dist/indexer/index-state.js.map +0 -1
  152. package/dist/indexer/index-state.test.d.ts +0 -1
  153. package/dist/indexer/index-state.test.js +0 -140
  154. package/dist/indexer/index-state.test.js.map +0 -1
  155. package/dist/indexer/index.js.map +0 -1
  156. package/dist/indexer/multi-repo-indexer.js.map +0 -1
  157. package/dist/indexer/multi-repo-indexer.test.d.ts +0 -1
  158. package/dist/indexer/multi-repo-indexer.test.js +0 -238
  159. package/dist/indexer/multi-repo-indexer.test.js.map +0 -1
  160. package/dist/parser/index.js.map +0 -1
  161. package/dist/parser/language-registry.js.map +0 -1
  162. package/dist/parser/language-registry.test.d.ts +0 -1
  163. package/dist/parser/language-registry.test.js +0 -225
  164. package/dist/parser/language-registry.test.js.map +0 -1
  165. package/dist/parser/markdown-parser.js.map +0 -1
  166. package/dist/parser/markdown-parser.test.d.ts +0 -1
  167. package/dist/parser/markdown-parser.test.js +0 -600
  168. package/dist/parser/markdown-parser.test.js.map +0 -1
  169. package/dist/parser/tree-sitter-parser.js.map +0 -1
  170. package/dist/retrieval/context-expander.js.map +0 -1
  171. package/dist/retrieval/context-expander.test.d.ts +0 -1
  172. package/dist/retrieval/context-expander.test.js +0 -339
  173. package/dist/retrieval/context-expander.test.js.map +0 -1
  174. package/dist/retrieval/cross-encoder-reranker.js.map +0 -1
  175. package/dist/retrieval/cross-encoder-reranker.test.d.ts +0 -1
  176. package/dist/retrieval/cross-encoder-reranker.test.js +0 -305
  177. package/dist/retrieval/cross-encoder-reranker.test.js.map +0 -1
  178. package/dist/retrieval/index.js.map +0 -1
  179. package/dist/retrieval/query-analyzer.js.map +0 -1
  180. package/dist/retrieval/query-analyzer.test.d.ts +0 -1
  181. package/dist/retrieval/query-analyzer.test.js +0 -236
  182. package/dist/retrieval/query-analyzer.test.js.map +0 -1
  183. package/dist/retrieval/token-budget.js.map +0 -1
  184. package/dist/retrieval/token-budget.test.d.ts +0 -1
  185. package/dist/retrieval/token-budget.test.js +0 -404
  186. package/dist/retrieval/token-budget.test.js.map +0 -1
  187. package/dist/storage/azure-blob-provider.js.map +0 -1
  188. package/dist/storage/azure-blob-provider.test.d.ts +0 -1
  189. package/dist/storage/azure-blob-provider.test.js +0 -250
  190. package/dist/storage/azure-blob-provider.test.js.map +0 -1
  191. package/dist/storage/gcs-provider.js.map +0 -1
  192. package/dist/storage/gcs-provider.test.d.ts +0 -1
  193. package/dist/storage/gcs-provider.test.js +0 -299
  194. package/dist/storage/gcs-provider.test.js.map +0 -1
  195. package/dist/storage/index.js.map +0 -1
  196. package/dist/storage/s3-provider.js.map +0 -1
  197. package/dist/storage/s3-provider.test.d.ts +0 -1
  198. package/dist/storage/s3-provider.test.js +0 -329
  199. package/dist/storage/s3-provider.test.js.map +0 -1
  200. package/dist/storage/types.js.map +0 -1
  201. package/dist/types/chunk.js.map +0 -1
  202. package/dist/types/config.js.map +0 -1
  203. package/dist/types/index.js.map +0 -1
  204. package/dist/types/provider.js.map +0 -1
  205. package/dist/types/search.js.map +0 -1
@@ -1,404 +0,0 @@
1
- import { describe, it, expect } from 'vitest';
2
- import { TokenBudgetOptimizer } from './token-budget.js';
3
- function makeSearchResult(chunkId, overrides = {}) {
4
- return {
5
- chunkId,
6
- content: `content of ${chunkId}`,
7
- nlSummary: `summary of ${chunkId}`,
8
- score: 0.9,
9
- method: 'hybrid',
10
- metadata: {
11
- chunkType: 'function',
12
- name: chunkId,
13
- declarations: [],
14
- imports: [],
15
- exports: [],
16
- },
17
- chunk: {
18
- id: chunkId,
19
- content: `content of ${chunkId}`,
20
- nlSummary: `summary of ${chunkId}`,
21
- filePath: `src/${chunkId}.ts`,
22
- startLine: 1,
23
- endLine: 10,
24
- language: 'typescript',
25
- metadata: {
26
- chunkType: 'function',
27
- name: chunkId,
28
- declarations: [],
29
- imports: [],
30
- exports: [],
31
- },
32
- },
33
- ...overrides,
34
- };
35
- }
36
- function makeRelatedChunk(chunkId, relationship = 'imports', distance = 1) {
37
- return {
38
- chunk: makeSearchResult(chunkId),
39
- relationship,
40
- distance,
41
- };
42
- }
43
- function makeExpandedContext(overrides = {}) {
44
- return {
45
- primaryResults: [
46
- makeSearchResult('primary1', { score: 0.95 }),
47
- makeSearchResult('primary2', { score: 0.85 }),
48
- ],
49
- relatedChunks: [
50
- makeRelatedChunk('related1', 'imports', 1),
51
- makeRelatedChunk('related2', 'imported_by', 2),
52
- ],
53
- graphExcerpt: {
54
- nodes: ['primary1', 'primary2', 'related1', 'related2'],
55
- edges: [
56
- { from: 'primary1', to: 'related1', type: 'imports' },
57
- { from: 'related2', to: 'primary2', type: 'imports' },
58
- ],
59
- },
60
- ...overrides,
61
- };
62
- }
63
- describe('TokenBudgetOptimizer', () => {
64
- describe('constructor', () => {
65
- it('should use default config when none provided', () => {
66
- const optimizer = new TokenBudgetOptimizer();
67
- // Validate by checking estimateTokens works
68
- expect(optimizer.estimateTokens('hello')).toBe(2);
69
- });
70
- it('should merge partial config with defaults', () => {
71
- const optimizer = new TokenBudgetOptimizer({ maxTokens: 4000 });
72
- // The optimizer should work with partial config
73
- const result = optimizer.assemble(makeExpandedContext());
74
- expect(result).toBeDefined();
75
- });
76
- });
77
- describe('estimateTokens', () => {
78
- it('should estimate tokens as text.length / 4', () => {
79
- const optimizer = new TokenBudgetOptimizer();
80
- expect(optimizer.estimateTokens('abcd')).toBe(1);
81
- expect(optimizer.estimateTokens('abcdefgh')).toBe(2);
82
- expect(optimizer.estimateTokens('abc')).toBe(1); // ceil(3/4) = 1
83
- });
84
- it('should return 0 for empty string', () => {
85
- const optimizer = new TokenBudgetOptimizer();
86
- expect(optimizer.estimateTokens('')).toBe(0);
87
- });
88
- it('should round up fractional tokens', () => {
89
- const optimizer = new TokenBudgetOptimizer();
90
- // 5 chars / 4 = 1.25 -> ceil = 2
91
- expect(optimizer.estimateTokens('abcde')).toBe(2);
92
- });
93
- });
94
- describe('assemble', () => {
95
- it('should produce a content string with sections', () => {
96
- const optimizer = new TokenBudgetOptimizer();
97
- const result = optimizer.assemble(makeExpandedContext());
98
- expect(result.content).toContain('## Primary Results');
99
- expect(result.content).toContain('## Related Context');
100
- expect(result.content).toContain('## Dependency Graph');
101
- });
102
- it('should include primary chunk content', () => {
103
- const optimizer = new TokenBudgetOptimizer();
104
- const result = optimizer.assemble(makeExpandedContext());
105
- expect(result.content).toContain('content of primary1');
106
- expect(result.content).toContain('content of primary2');
107
- });
108
- it('should include related chunk content', () => {
109
- const optimizer = new TokenBudgetOptimizer();
110
- const result = optimizer.assemble(makeExpandedContext());
111
- expect(result.content).toContain('content of related1');
112
- });
113
- it('should include file path headers for primary chunks', () => {
114
- const optimizer = new TokenBudgetOptimizer();
115
- const result = optimizer.assemble(makeExpandedContext());
116
- expect(result.content).toContain('File: src/primary1.ts');
117
- });
118
- it('should include relationship labels for related chunks', () => {
119
- const optimizer = new TokenBudgetOptimizer();
120
- const result = optimizer.assemble(makeExpandedContext());
121
- expect(result.content).toContain('[imports');
122
- });
123
- it('should include graph excerpt', () => {
124
- const optimizer = new TokenBudgetOptimizer();
125
- const result = optimizer.assemble(makeExpandedContext());
126
- expect(result.content).toContain('primary1 --[imports]--> related1');
127
- });
128
- it('should sort primary results by score descending', () => {
129
- const expanded = makeExpandedContext({
130
- primaryResults: [
131
- makeSearchResult('low', { score: 0.3 }),
132
- makeSearchResult('high', { score: 0.99 }),
133
- makeSearchResult('mid', { score: 0.6 }),
134
- ],
135
- });
136
- const optimizer = new TokenBudgetOptimizer();
137
- const result = optimizer.assemble(expanded);
138
- // high (0.99) should come before mid (0.6) which should come before low (0.3)
139
- const highIdx = result.content.indexOf('content of high');
140
- const midIdx = result.content.indexOf('content of mid');
141
- const lowIdx = result.content.indexOf('content of low');
142
- expect(highIdx).toBeLessThan(midIdx);
143
- expect(midIdx).toBeLessThan(lowIdx);
144
- });
145
- it('should sort related chunks by distance ascending', () => {
146
- const expanded = makeExpandedContext({
147
- relatedChunks: [
148
- makeRelatedChunk('far', 'imports', 3),
149
- makeRelatedChunk('near', 'imports', 1),
150
- makeRelatedChunk('mid', 'imports', 2),
151
- ],
152
- });
153
- const optimizer = new TokenBudgetOptimizer();
154
- const result = optimizer.assemble(expanded);
155
- const nearIdx = result.content.indexOf('content of near');
156
- const midIdx = result.content.indexOf('content of mid');
157
- const farIdx = result.content.indexOf('content of far');
158
- expect(nearIdx).toBeLessThan(midIdx);
159
- expect(midIdx).toBeLessThan(farIdx);
160
- });
161
- it('should set truncated=false when everything fits', () => {
162
- const optimizer = new TokenBudgetOptimizer({ maxTokens: 100000 });
163
- const result = optimizer.assemble(makeExpandedContext());
164
- expect(result.truncated).toBe(false);
165
- });
166
- it('should return included primary chunks', () => {
167
- const optimizer = new TokenBudgetOptimizer();
168
- const expanded = makeExpandedContext();
169
- const result = optimizer.assemble(expanded);
170
- expect(result.primaryChunks.length).toBeGreaterThan(0);
171
- expect(result.primaryChunks.length).toBeLessThanOrEqual(expanded.primaryResults.length);
172
- });
173
- it('should return included related chunks', () => {
174
- const optimizer = new TokenBudgetOptimizer();
175
- const expanded = makeExpandedContext();
176
- const result = optimizer.assemble(expanded);
177
- expect(result.relatedChunks.length).toBeGreaterThanOrEqual(0);
178
- expect(result.relatedChunks.length).toBeLessThanOrEqual(expanded.relatedChunks.length);
179
- });
180
- it('should report token count', () => {
181
- const optimizer = new TokenBudgetOptimizer();
182
- const result = optimizer.assemble(makeExpandedContext());
183
- expect(result.tokenCount).toBeGreaterThan(0);
184
- });
185
- });
186
- describe('budget overflow handling', () => {
187
- it('should truncate primary results when budget is very small', () => {
188
- const optimizer = new TokenBudgetOptimizer({
189
- maxTokens: 100,
190
- reserveForAnswer: 0,
191
- primaryWeight: 1.0,
192
- relatedWeight: 0,
193
- graphWeight: 0,
194
- });
195
- // Create many large primary results
196
- const bigResults = Array.from({ length: 20 }, (_, i) => makeSearchResult(`chunk${i}`, {
197
- score: 0.9 - i * 0.01,
198
- content: 'x'.repeat(200), // Each chunk ~50 tokens
199
- }));
200
- const expanded = makeExpandedContext({
201
- primaryResults: bigResults,
202
- relatedChunks: [],
203
- graphExcerpt: { nodes: [], edges: [] },
204
- });
205
- const result = optimizer.assemble(expanded);
206
- expect(result.primaryChunks.length).toBeLessThan(bigResults.length);
207
- expect(result.truncated).toBe(true);
208
- });
209
- it('should truncate related chunks when budget is limited', () => {
210
- const optimizer = new TokenBudgetOptimizer({
211
- maxTokens: 200,
212
- reserveForAnswer: 0,
213
- primaryWeight: 0.5,
214
- relatedWeight: 0.5,
215
- graphWeight: 0,
216
- });
217
- const manyRelated = Array.from({ length: 20 }, (_, i) => makeRelatedChunk(`rel${i}`, 'imports', i + 1));
218
- const expanded = makeExpandedContext({
219
- primaryResults: [makeSearchResult('p1', { score: 0.9, content: 'short' })],
220
- relatedChunks: manyRelated,
221
- graphExcerpt: { nodes: [], edges: [] },
222
- });
223
- const result = optimizer.assemble(expanded);
224
- expect(result.relatedChunks.length).toBeLessThan(manyRelated.length);
225
- expect(result.truncated).toBe(true);
226
- });
227
- it('should skip graph excerpt when budget is exhausted', () => {
228
- const optimizer = new TokenBudgetOptimizer({
229
- maxTokens: 100,
230
- reserveForAnswer: 0,
231
- primaryWeight: 0.9,
232
- relatedWeight: 0.09,
233
- graphWeight: 0.01, // Only 1 token for graph
234
- });
235
- const expanded = makeExpandedContext({
236
- primaryResults: [makeSearchResult('p1', { score: 0.9, content: 'short' })],
237
- relatedChunks: [],
238
- graphExcerpt: {
239
- nodes: ['a', 'b', 'c', 'd', 'e'],
240
- edges: [
241
- { from: 'a', to: 'b', type: 'imports' },
242
- { from: 'b', to: 'c', type: 'imports' },
243
- { from: 'c', to: 'd', type: 'imports' },
244
- ],
245
- },
246
- });
247
- const result = optimizer.assemble(expanded);
248
- // Graph is too large for 1 token, so it should be excluded and truncated=true
249
- expect(result.truncated).toBe(true);
250
- });
251
- });
252
- describe('empty inputs', () => {
253
- it('should handle empty expanded context', () => {
254
- const optimizer = new TokenBudgetOptimizer();
255
- const result = optimizer.assemble({
256
- primaryResults: [],
257
- relatedChunks: [],
258
- graphExcerpt: { nodes: [], edges: [] },
259
- });
260
- expect(result.content).toBe('');
261
- expect(result.primaryChunks).toHaveLength(0);
262
- expect(result.relatedChunks).toHaveLength(0);
263
- expect(result.tokenCount).toBe(0);
264
- expect(result.truncated).toBe(false);
265
- });
266
- it('should handle context with only primary results', () => {
267
- const optimizer = new TokenBudgetOptimizer();
268
- const result = optimizer.assemble({
269
- primaryResults: [makeSearchResult('p1')],
270
- relatedChunks: [],
271
- graphExcerpt: { nodes: [], edges: [] },
272
- });
273
- expect(result.content).toContain('## Primary Results');
274
- expect(result.content).not.toContain('## Related Context');
275
- expect(result.content).not.toContain('## Dependency Graph');
276
- });
277
- it('should handle context with only related chunks', () => {
278
- const optimizer = new TokenBudgetOptimizer();
279
- const result = optimizer.assemble({
280
- primaryResults: [],
281
- relatedChunks: [makeRelatedChunk('r1')],
282
- graphExcerpt: { nodes: [], edges: [] },
283
- });
284
- expect(result.content).not.toContain('## Primary Results');
285
- expect(result.content).toContain('## Related Context');
286
- });
287
- });
288
- describe('budget allocation', () => {
289
- it('should respect custom weight allocation', () => {
290
- const optimizer = new TokenBudgetOptimizer({
291
- maxTokens: 10000,
292
- reserveForAnswer: 0,
293
- primaryWeight: 1.0,
294
- relatedWeight: 0,
295
- graphWeight: 0,
296
- });
297
- const expanded = makeExpandedContext();
298
- const result = optimizer.assemble(expanded);
299
- // With 0 weight for related and graph, they should be empty
300
- expect(result.relatedChunks).toHaveLength(0);
301
- expect(result.content).not.toContain('## Related Context');
302
- expect(result.content).not.toContain('## Dependency Graph');
303
- });
304
- it('should reserve tokens for answer', () => {
305
- // With maxTokens=200, reserveForAnswer=190, only 10 tokens available
306
- const optimizer = new TokenBudgetOptimizer({
307
- maxTokens: 200,
308
- reserveForAnswer: 190,
309
- primaryWeight: 1.0,
310
- relatedWeight: 0,
311
- graphWeight: 0,
312
- });
313
- const bigResults = Array.from({ length: 10 }, (_, i) => makeSearchResult(`chunk${i}`, {
314
- score: 0.9,
315
- content: 'x'.repeat(100),
316
- }));
317
- const result = optimizer.assemble({
318
- primaryResults: bigResults,
319
- relatedChunks: [],
320
- graphExcerpt: { nodes: [], edges: [] },
321
- });
322
- // Very limited budget should restrict how many primary results fit
323
- expect(result.primaryChunks.length).toBeLessThan(bigResults.length);
324
- });
325
- });
326
- describe('formatting', () => {
327
- it('should format primary chunks with name and type', () => {
328
- const optimizer = new TokenBudgetOptimizer();
329
- const result = optimizer.assemble(makeExpandedContext({
330
- primaryResults: [
331
- makeSearchResult('myFunc', {
332
- score: 0.9,
333
- metadata: {
334
- chunkType: 'function',
335
- name: 'myFunc',
336
- declarations: [],
337
- imports: [],
338
- exports: [],
339
- },
340
- }),
341
- ],
342
- }));
343
- expect(result.content).toContain('### myFunc (function)');
344
- });
345
- it('should format related chunks with relationship and distance', () => {
346
- const optimizer = new TokenBudgetOptimizer();
347
- const result = optimizer.assemble(makeExpandedContext({
348
- primaryResults: [],
349
- relatedChunks: [
350
- makeRelatedChunk('helper', 'imported_by', 2),
351
- ],
352
- }));
353
- expect(result.content).toContain('[imported_by, distance=2]');
354
- });
355
- it('should format graph excerpt with node list and edges', () => {
356
- const optimizer = new TokenBudgetOptimizer();
357
- const result = optimizer.assemble(makeExpandedContext({
358
- primaryResults: [],
359
- relatedChunks: [],
360
- graphExcerpt: {
361
- nodes: ['A', 'B'],
362
- edges: [{ from: 'A', to: 'B', type: 'imports' }],
363
- },
364
- }));
365
- expect(result.content).toContain('Nodes: A, B');
366
- expect(result.content).toContain('A --[imports]--> B');
367
- });
368
- it('should wrap code in code blocks', () => {
369
- const optimizer = new TokenBudgetOptimizer();
370
- const result = optimizer.assemble(makeExpandedContext({
371
- primaryResults: [makeSearchResult('p1', { score: 0.9 })],
372
- }));
373
- expect(result.content).toContain('```');
374
- });
375
- it('should include line numbers in file path when available', () => {
376
- const optimizer = new TokenBudgetOptimizer();
377
- const result = optimizer.assemble(makeExpandedContext({
378
- primaryResults: [
379
- makeSearchResult('p1', {
380
- score: 0.9,
381
- chunk: {
382
- id: 'p1',
383
- content: 'code',
384
- nlSummary: 'summary',
385
- filePath: 'src/foo.ts',
386
- startLine: 10,
387
- endLine: 20,
388
- language: 'typescript',
389
- metadata: {
390
- chunkType: 'function',
391
- name: 'p1',
392
- declarations: [],
393
- imports: [],
394
- exports: [],
395
- },
396
- },
397
- }),
398
- ],
399
- }));
400
- expect(result.content).toContain('[L10-20]');
401
- });
402
- });
403
- });
404
- //# sourceMappingURL=token-budget.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"token-budget.test.js","sourceRoot":"","sources":["../../src/retrieval/token-budget.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAIzD,SAAS,gBAAgB,CACvB,OAAe,EACf,YAAmC,EAAE;IAErC,OAAO;QACL,OAAO;QACP,OAAO,EAAE,cAAc,OAAO,EAAE;QAChC,SAAS,EAAE,cAAc,OAAO,EAAE;QAClC,KAAK,EAAE,GAAG;QACV,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE;YACR,SAAS,EAAE,UAAU;YACrB,IAAI,EAAE,OAAO;YACb,YAAY,EAAE,EAAE;YAChB,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,EAAE;SACZ;QACD,KAAK,EAAE;YACL,EAAE,EAAE,OAAO;YACX,OAAO,EAAE,cAAc,OAAO,EAAE;YAChC,SAAS,EAAE,cAAc,OAAO,EAAE;YAClC,QAAQ,EAAE,OAAO,OAAO,KAAK;YAC7B,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,YAAY;YACtB,QAAQ,EAAE;gBACR,SAAS,EAAE,UAAU;gBACrB,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,EAAE;gBAChB,OAAO,EAAE,EAAE;gBACX,OAAO,EAAE,EAAE;aACZ;SACF;QACD,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CACvB,OAAe,EACf,eAA6C,SAAS,EACtD,QAAQ,GAAG,CAAC;IAEZ,OAAO;QACL,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC;QAChC,YAAY;QACZ,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,YAAsC,EAAE;IAExC,OAAO;QACL,cAAc,EAAE;YACd,gBAAgB,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YAC7C,gBAAgB,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;SAC9C;QACD,aAAa,EAAE;YACb,gBAAgB,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;YAC1C,gBAAgB,CAAC,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;SAC/C;QACD,YAAY,EAAE;YACZ,KAAK,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC;YACvD,KAAK,EAAE;gBACL,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;gBACrD,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;aACtD;SACF;QACD,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,4CAA4C;YAC5C,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACnD,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChE,gDAAgD;YAChD,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;YACzD,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACnD,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjD,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACrD,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB;QACnE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC1C,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,iCAAiC;YACjC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAEzD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAEzD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;YACxD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAEzD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;YAC7D,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAEzD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAC/D,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAEzD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAEzD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,kCAAkC,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,QAAQ,GAAG,mBAAmB,CAAC;gBACnC,cAAc,EAAE;oBACd,gBAAgB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;oBACvC,gBAAgB,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;oBACzC,gBAAgB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;iBACxC;aACF,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAE5C,8EAA8E;YAC9E,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YACxD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YACxD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;YAC1D,MAAM,QAAQ,GAAG,mBAAmB,CAAC;gBACnC,aAAa,EAAE;oBACb,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;oBACrC,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;oBACtC,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;iBACtC;aACF,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAE5C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YACxD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YACxD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;YAClE,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAEzD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAE5C,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,mBAAmB,CACrD,QAAQ,CAAC,cAAc,CAAC,MAAM,CAC/B,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAE5C,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;YAC9D,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,mBAAmB,CACrD,QAAQ,CAAC,aAAa,CAAC,MAAM,CAC9B,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAEzD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACxC,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;YACnE,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC;gBACzC,SAAS,EAAE,GAAG;gBACd,gBAAgB,EAAE,CAAC;gBACnB,aAAa,EAAE,GAAG;gBAClB,aAAa,EAAE,CAAC;gBAChB,WAAW,EAAE,CAAC;aACf,CAAC,CAAC;YAEH,oCAAoC;YACpC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACrD,gBAAgB,CAAC,QAAQ,CAAC,EAAE,EAAE;gBAC5B,KAAK,EAAE,GAAG,GAAG,CAAC,GAAG,IAAI;gBACrB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,wBAAwB;aACnD,CAAC,CACH,CAAC;YAEF,MAAM,QAAQ,GAAG,mBAAmB,CAAC;gBACnC,cAAc,EAAE,UAAU;gBAC1B,aAAa,EAAE,EAAE;gBACjB,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;aACvC,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAE5C,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACpE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAC/D,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC;gBACzC,SAAS,EAAE,GAAG;gBACd,gBAAgB,EAAE,CAAC;gBACnB,aAAa,EAAE,GAAG;gBAClB,aAAa,EAAE,GAAG;gBAClB,WAAW,EAAE,CAAC;aACf,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACtD,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,CAC9C,CAAC;YAEF,MAAM,QAAQ,GAAG,mBAAmB,CAAC;gBACnC,cAAc,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC1E,aAAa,EAAE,WAAW;gBAC1B,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;aACvC,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAE5C,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACrE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAC5D,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC;gBACzC,SAAS,EAAE,GAAG;gBACd,gBAAgB,EAAE,CAAC;gBACnB,aAAa,EAAE,GAAG;gBAClB,aAAa,EAAE,IAAI;gBACnB,WAAW,EAAE,IAAI,EAAE,yBAAyB;aAC7C,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,mBAAmB,CAAC;gBACnC,cAAc,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC1E,aAAa,EAAE,EAAE;gBACjB,YAAY,EAAE;oBACZ,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;oBAChC,KAAK,EAAE;wBACL,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE;wBACvC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE;wBACvC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE;qBACxC;iBACF;aACF,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC5C,8EAA8E;YAC9E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC;gBAChC,cAAc,EAAE,EAAE;gBAClB,aAAa,EAAE,EAAE;gBACjB,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;aACvC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC;gBAChC,cAAc,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACxC,aAAa,EAAE,EAAE;gBACjB,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;aACvC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;YAC3D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YACxD,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC;gBAChC,cAAc,EAAE,EAAE;gBAClB,aAAa,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACvC,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;aACvC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;YAC3D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACjD,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC;gBACzC,SAAS,EAAE,KAAK;gBAChB,gBAAgB,EAAE,CAAC;gBACnB,aAAa,EAAE,GAAG;gBAClB,aAAa,EAAE,CAAC;gBAChB,WAAW,EAAE,CAAC;aACf,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAE5C,4DAA4D;YAC5D,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;YAC3D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC1C,qEAAqE;YACrE,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC;gBACzC,SAAS,EAAE,GAAG;gBACd,gBAAgB,EAAE,GAAG;gBACrB,aAAa,EAAE,GAAG;gBAClB,aAAa,EAAE,CAAC;gBAChB,WAAW,EAAE,CAAC;aACf,CAAC,CAAC;YAEH,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACrD,gBAAgB,CAAC,QAAQ,CAAC,EAAE,EAAE;gBAC5B,KAAK,EAAE,GAAG;gBACV,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;aACzB,CAAC,CACH,CAAC;YAEF,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC;gBAChC,cAAc,EAAE,UAAU;gBAC1B,aAAa,EAAE,EAAE;gBACjB,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;aACvC,CAAC,CAAC;YAEH,mEAAmE;YACnE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAC/B,mBAAmB,CAAC;gBAClB,cAAc,EAAE;oBACd,gBAAgB,CAAC,QAAQ,EAAE;wBACzB,KAAK,EAAE,GAAG;wBACV,QAAQ,EAAE;4BACR,SAAS,EAAE,UAAU;4BACrB,IAAI,EAAE,QAAQ;4BACd,YAAY,EAAE,EAAE;4BAChB,OAAO,EAAE,EAAE;4BACX,OAAO,EAAE,EAAE;yBACZ;qBACF,CAAC;iBACH;aACF,CAAC,CACH,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;YACrE,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAC/B,mBAAmB,CAAC;gBAClB,cAAc,EAAE,EAAE;gBAClB,aAAa,EAAE;oBACb,gBAAgB,CAAC,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;iBAC7C;aACF,CAAC,CACH,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAC/B,mBAAmB,CAAC;gBAClB,cAAc,EAAE,EAAE;gBAClB,aAAa,EAAE,EAAE;gBACjB,YAAY,EAAE;oBACZ,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;oBACjB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;iBACjD;aACF,CAAC,CACH,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;YACzC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAC/B,mBAAmB,CAAC;gBAClB,cAAc,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;aACzD,CAAC,CACH,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;YACjE,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAC/B,mBAAmB,CAAC;gBAClB,cAAc,EAAE;oBACd,gBAAgB,CAAC,IAAI,EAAE;wBACrB,KAAK,EAAE,GAAG;wBACV,KAAK,EAAE;4BACL,EAAE,EAAE,IAAI;4BACR,OAAO,EAAE,MAAM;4BACf,SAAS,EAAE,SAAS;4BACpB,QAAQ,EAAE,YAAY;4BACtB,SAAS,EAAE,EAAE;4BACb,OAAO,EAAE,EAAE;4BACX,QAAQ,EAAE,YAAY;4BACtB,QAAQ,EAAE;gCACR,SAAS,EAAE,UAAU;gCACrB,IAAI,EAAE,IAAI;gCACV,YAAY,EAAE,EAAE;gCAChB,OAAO,EAAE,EAAE;gCACX,OAAO,EAAE,EAAE;6BACZ;yBACF;qBACF,CAAC;iBACH;aACF,CAAC,CACH,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"azure-blob-provider.js","sourceRoot":"","sources":["../../src/storage/azure-blob-provider.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};