@cesarandreslopez/occ 0.8.10 → 0.8.12
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 +7 -4
- package/dist/src/code/build.d.ts +49 -1
- package/dist/src/code/build.js +127 -33
- package/dist/src/code/build.js.map +1 -1
- package/dist/src/code/chunk.d.ts +10 -0
- package/dist/src/code/chunk.js +14 -1
- package/dist/src/code/chunk.js.map +1 -1
- package/dist/src/code/discover.d.ts +13 -0
- package/dist/src/code/discover.js +49 -2
- package/dist/src/code/discover.js.map +1 -1
- package/dist/src/code/incremental.d.ts +75 -0
- package/dist/src/code/incremental.js +257 -0
- package/dist/src/code/incremental.js.map +1 -0
- package/dist/src/code/map.d.ts +8 -1
- package/dist/src/code/map.js +13 -3
- package/dist/src/code/map.js.map +1 -1
- package/dist/src/code/parsers.d.ts +1 -0
- package/dist/src/code/parsers.js +1 -1
- package/dist/src/code/parsers.js.map +1 -1
- package/dist/src/code/rank.d.ts +14 -0
- package/dist/src/code/rank.js +58 -0
- package/dist/src/code/rank.js.map +1 -1
- package/dist/src/code/store.d.ts +20 -0
- package/dist/src/code/store.js +262 -109
- package/dist/src/code/store.js.map +1 -1
- package/dist/src/doc/chunk.d.ts +17 -0
- package/dist/src/doc/chunk.js +47 -18
- package/dist/src/doc/chunk.js.map +1 -1
- package/dist/src/doc/inspect-docx.js +13 -3
- package/dist/src/doc/inspect-docx.js.map +1 -1
- package/dist/src/doc/inspect-pdf.js +12 -17
- package/dist/src/doc/inspect-pdf.js.map +1 -1
- package/dist/src/index.d.ts +13 -8
- package/dist/src/index.js +9 -5
- package/dist/src/index.js.map +1 -1
- package/dist/src/inspect/xlsx-cells.d.ts +8 -0
- package/dist/src/inspect/xlsx-cells.js +17 -2
- package/dist/src/inspect/xlsx-cells.js.map +1 -1
- package/dist/src/markdown/convert.js +45 -27
- package/dist/src/markdown/convert.js.map +1 -1
- package/dist/src/parsers/docx.js +10 -2
- package/dist/src/parsers/docx.js.map +1 -1
- package/dist/src/parsers/index.js +5 -0
- package/dist/src/parsers/index.js.map +1 -1
- package/dist/src/parsers/pdf.js +12 -32
- package/dist/src/parsers/pdf.js.map +1 -1
- package/dist/src/parsers/xlsx.js +11 -1
- package/dist/src/parsers/xlsx.js.map +1 -1
- package/dist/src/progress-event.d.ts +3 -1
- package/dist/src/progress-event.js +32 -1
- package/dist/src/progress-event.js.map +1 -1
- package/dist/src/sheet/inspect.js +20 -10
- package/dist/src/sheet/inspect.js.map +1 -1
- package/dist/src/table/inspect-docx.js +10 -1
- package/dist/src/table/inspect-docx.js.map +1 -1
- package/dist/src/table/inspect-xlsx.js +15 -5
- package/dist/src/table/inspect-xlsx.js.map +1 -1
- package/dist/src/utils.d.ts +24 -0
- package/dist/src/utils.js +91 -2
- package/dist/src/utils.js.map +1 -1
- package/dist/src/workspace/bundle.d.ts +51 -0
- package/dist/src/workspace/bundle.js +405 -93
- package/dist/src/workspace/bundle.js.map +1 -1
- package/dist/src/workspace/documents.d.ts +4 -0
- package/dist/src/workspace/documents.js +15 -2
- package/dist/src/workspace/documents.js.map +1 -1
- package/dist/src/workspace/prepare-types.d.ts +15 -0
- package/dist/src/workspace/prepare-types.js +18 -1
- package/dist/src/workspace/prepare-types.js.map +1 -1
- package/dist/src/workspace/prepare.js +10 -2
- package/dist/src/workspace/prepare.js.map +1 -1
- package/package.json +9 -2
|
@@ -4,9 +4,22 @@ import { describeWorkspace } from './describe.js';
|
|
|
4
4
|
import { inspectWorkspaceDocumentSet } from './documents.js';
|
|
5
5
|
import { buildCodebaseIndexIsolated } from '../code/isolated.js';
|
|
6
6
|
import { previewCodebaseSize } from '../code/preview.js';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
7
|
+
import { openCodeIndexStore } from '../code/store.js';
|
|
8
|
+
import { slimifyIndex } from '../code/slim.js';
|
|
9
|
+
import { chunkFromIndex } from '../code/chunk.js';
|
|
10
|
+
import { chunkDocument, chunkDocumentFromMarkdown } from '../doc/chunk.js';
|
|
11
|
+
import { abortIfNeeded, mapWithConcurrency, normalizeRelativePath } from '../utils.js';
|
|
12
|
+
import { isOccAbortError } from '../errors.js';
|
|
9
13
|
const DEFAULT_EXCLUDE_DIR = ['node_modules', '.git', 'dist', 'vendor', 'build', 'coverage', 'target'];
|
|
14
|
+
// Step descriptors shared by the sequential and concurrent phase paths.
|
|
15
|
+
const STEP_DESCRIPTION = { phase: 'description', detail: 'Describe workspace' };
|
|
16
|
+
const STEP_ANALYSIS = { phase: 'stats', detail: 'Analyze workspace totals' };
|
|
17
|
+
const STEP_DOCUMENTS = { phase: 'inspect', detail: 'Inspect documents' };
|
|
18
|
+
const STEP_CODE_PREVIEW = { phase: 'code-preview', detail: 'Preview code index size' };
|
|
19
|
+
const STEP_CODE_INDEX = { phase: 'index', detail: 'Build code index' };
|
|
20
|
+
const STEP_CODE_CHUNK = { phase: 'code-chunk', detail: 'Chunk code files' };
|
|
21
|
+
const STEP_DOCUMENT_CHUNK = { phase: 'document-chunk', detail: 'Chunk documents' };
|
|
22
|
+
const STEP_OUTLINE = { phase: 'outline', detail: 'Build workspace outline' };
|
|
10
23
|
function reportStep(onProgress, step, completed, total, startedAt) {
|
|
11
24
|
onProgress?.({
|
|
12
25
|
phase: step.phase,
|
|
@@ -87,6 +100,9 @@ function buildOutline(rootDir, description, documents, codeIndex) {
|
|
|
87
100
|
}
|
|
88
101
|
return root;
|
|
89
102
|
}
|
|
103
|
+
function escapeRegExp(value) {
|
|
104
|
+
return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
105
|
+
}
|
|
90
106
|
function detectCodeDocumentReferences(codeIndex, documents, limit) {
|
|
91
107
|
if (!codeIndex || !documents || limit <= 0)
|
|
92
108
|
return [];
|
|
@@ -101,6 +117,23 @@ function detectCodeDocumentReferences(codeIndex, documents, limit) {
|
|
|
101
117
|
seenNames.add(node.name);
|
|
102
118
|
return true;
|
|
103
119
|
}).slice(0, 1_000);
|
|
120
|
+
// Compile each symbol pattern once instead of per line.
|
|
121
|
+
const compiled = symbols.map((symbol) => ({
|
|
122
|
+
symbol,
|
|
123
|
+
pattern: new RegExp(`\\b${escapeRegExp(symbol.name)}\\b`),
|
|
124
|
+
}));
|
|
125
|
+
// One alternation over all (longest-first, already-escaped) names, used
|
|
126
|
+
// purely as a per-line skip filter — extraction still runs the per-symbol
|
|
127
|
+
// patterns, so output order and the limit early-return are unchanged.
|
|
128
|
+
let prescreen = null;
|
|
129
|
+
if (symbols.length > 0) {
|
|
130
|
+
try {
|
|
131
|
+
prescreen = new RegExp(`\\b(?:${symbols.map((symbol) => escapeRegExp(symbol.name)).join('|')})\\b`);
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
prescreen = null; // Fall back to scanning every line with the compiled patterns.
|
|
135
|
+
}
|
|
136
|
+
}
|
|
104
137
|
const references = [];
|
|
105
138
|
for (const doc of documents.documents) {
|
|
106
139
|
if (!doc.markdownContent)
|
|
@@ -110,8 +143,9 @@ function detectCodeDocumentReferences(codeIndex, documents, limit) {
|
|
|
110
143
|
const line = lines[lineIndex];
|
|
111
144
|
if (!line.trim())
|
|
112
145
|
continue;
|
|
113
|
-
|
|
114
|
-
|
|
146
|
+
if (prescreen && !prescreen.test(line))
|
|
147
|
+
continue;
|
|
148
|
+
for (const { symbol, pattern } of compiled) {
|
|
115
149
|
if (!pattern.test(line))
|
|
116
150
|
continue;
|
|
117
151
|
references.push({
|
|
@@ -134,32 +168,123 @@ async function buildDocumentChunks(documents, options, onProgress) {
|
|
|
134
168
|
if (!documents)
|
|
135
169
|
return [];
|
|
136
170
|
const maxChunks = options.maxDocumentChunks ?? 500;
|
|
137
|
-
const
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
171
|
+
const total = documents.documents.length;
|
|
172
|
+
let completed = 0;
|
|
173
|
+
let accumulatedChunks = 0;
|
|
174
|
+
// Workers skip documents once the running chunk total reaches the cap, so
|
|
175
|
+
// conversion stops near it instead of chunking every document (documents
|
|
176
|
+
// already in flight still finish — up to the concurrency width of overshoot).
|
|
177
|
+
// Items are dispatched in document order, so every document that contributed
|
|
178
|
+
// to the total precedes any skipped one; flattening in document order plus
|
|
179
|
+
// the post-join slice stays the authoritative cap, and the returned chunks
|
|
180
|
+
// are identical to chunking everything.
|
|
181
|
+
const perDocument = await mapWithConcurrency(documents.documents, 5, async (doc) => {
|
|
182
|
+
if (accumulatedChunks >= maxChunks)
|
|
183
|
+
return undefined;
|
|
184
|
+
let docChunks;
|
|
141
185
|
try {
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
186
|
+
docChunks = doc.markdownContent != null
|
|
187
|
+
// Markdown was already produced by document inspection — reuse it
|
|
188
|
+
// instead of re-reading and re-converting the file. Per-document
|
|
189
|
+
// values are spread last so caller chunk options cannot clobber them.
|
|
190
|
+
? chunkDocumentFromMarkdown(doc.markdownContent, {
|
|
191
|
+
...options.chunk,
|
|
192
|
+
filePath: doc.filePath,
|
|
193
|
+
relativePath: doc.relativePath,
|
|
194
|
+
})
|
|
195
|
+
: await chunkDocument(doc.filePath, {
|
|
196
|
+
...options.chunk,
|
|
197
|
+
relativePath: doc.relativePath,
|
|
198
|
+
});
|
|
149
199
|
}
|
|
150
200
|
catch {
|
|
151
201
|
// Document conversion errors are already represented in inspectDocuments.
|
|
152
202
|
}
|
|
203
|
+
if (docChunks)
|
|
204
|
+
accumulatedChunks += docChunks.length;
|
|
153
205
|
onProgress?.({
|
|
154
206
|
phase: 'document-chunk',
|
|
155
|
-
total
|
|
156
|
-
completed:
|
|
207
|
+
total,
|
|
208
|
+
completed: ++completed,
|
|
157
209
|
detail: doc.relativePath,
|
|
158
210
|
currentPath: doc.filePath,
|
|
159
211
|
scope: 'document',
|
|
160
212
|
});
|
|
213
|
+
return docChunks;
|
|
214
|
+
}, options.signal);
|
|
215
|
+
const chunks = [];
|
|
216
|
+
for (const docChunks of perDocument) {
|
|
217
|
+
if (docChunks)
|
|
218
|
+
chunks.push(...docChunks);
|
|
161
219
|
}
|
|
162
|
-
return chunks;
|
|
220
|
+
return chunks.slice(0, maxChunks);
|
|
221
|
+
}
|
|
222
|
+
function buildCodeChunks(codeIndex, options, onProgress) {
|
|
223
|
+
if (!codeIndex)
|
|
224
|
+
return [];
|
|
225
|
+
const chunks = chunkFromIndex(codeIndex, options.codeChunk);
|
|
226
|
+
const capped = options.maxCodeChunks != null
|
|
227
|
+
? chunks.slice(0, Math.max(0, options.maxCodeChunks))
|
|
228
|
+
: chunks;
|
|
229
|
+
onProgress?.({
|
|
230
|
+
phase: 'code-chunk',
|
|
231
|
+
total: capped.length,
|
|
232
|
+
completed: capped.length,
|
|
233
|
+
detail: 'Code chunking complete',
|
|
234
|
+
scope: 'code',
|
|
235
|
+
});
|
|
236
|
+
return capped;
|
|
237
|
+
}
|
|
238
|
+
function mapCodeChunk(chunk) {
|
|
239
|
+
return {
|
|
240
|
+
kind: 'code',
|
|
241
|
+
chunkId: `${chunk.relativePath}#code-${chunk.chunkIndex}`,
|
|
242
|
+
filePath: chunk.filePath,
|
|
243
|
+
relativePath: chunk.relativePath,
|
|
244
|
+
title: chunk.title,
|
|
245
|
+
content: chunk.content,
|
|
246
|
+
chunkIndex: chunk.chunkIndex,
|
|
247
|
+
startLine: chunk.startLine,
|
|
248
|
+
endLine: chunk.endLine,
|
|
249
|
+
language: chunk.language,
|
|
250
|
+
symbolNames: chunk.symbolNames,
|
|
251
|
+
symbolTypes: chunk.symbolTypes,
|
|
252
|
+
};
|
|
253
|
+
}
|
|
254
|
+
function mapDocumentChunksToCorpus(chunks) {
|
|
255
|
+
const perFileIndex = new Map();
|
|
256
|
+
return chunks.map((chunk) => {
|
|
257
|
+
const chunkIndex = perFileIndex.get(chunk.relativePath) ?? 0;
|
|
258
|
+
perFileIndex.set(chunk.relativePath, chunkIndex + 1);
|
|
259
|
+
return {
|
|
260
|
+
kind: 'document',
|
|
261
|
+
chunkId: chunk.chunkId,
|
|
262
|
+
filePath: chunk.filePath,
|
|
263
|
+
relativePath: chunk.relativePath,
|
|
264
|
+
title: chunk.title,
|
|
265
|
+
content: chunk.content,
|
|
266
|
+
chunkIndex,
|
|
267
|
+
startLine: chunk.startLine,
|
|
268
|
+
endLine: chunk.endLine,
|
|
269
|
+
format: chunk.format,
|
|
270
|
+
headingPath: chunk.headingPath,
|
|
271
|
+
anchor: chunk.anchor,
|
|
272
|
+
tokenEstimate: chunk.tokenEstimate,
|
|
273
|
+
wordCount: chunk.wordCount,
|
|
274
|
+
};
|
|
275
|
+
});
|
|
276
|
+
}
|
|
277
|
+
function buildCorpusChunks(codeChunks, documentChunks, options) {
|
|
278
|
+
if (!options.includeCorpusChunks)
|
|
279
|
+
return undefined;
|
|
280
|
+
const chunks = [
|
|
281
|
+
...(codeChunks ?? []).map(mapCodeChunk),
|
|
282
|
+
...mapDocumentChunksToCorpus(documentChunks ?? []),
|
|
283
|
+
].sort((left, right) => (left.relativePath.localeCompare(right.relativePath)
|
|
284
|
+
|| left.kind.localeCompare(right.kind)
|
|
285
|
+
|| left.chunkIndex - right.chunkIndex));
|
|
286
|
+
const maxChunks = options.maxCorpusChunks;
|
|
287
|
+
return maxChunks != null ? chunks.slice(0, Math.max(0, maxChunks)) : chunks;
|
|
163
288
|
}
|
|
164
289
|
export async function bundleWorkspace(rootDir, options = {}) {
|
|
165
290
|
const startedAt = Date.now();
|
|
@@ -168,103 +293,288 @@ export async function bundleWorkspace(rootDir, options = {}) {
|
|
|
168
293
|
const includeAnalysis = options.includeAnalysis !== false;
|
|
169
294
|
const includeDocuments = options.includeDocuments !== false;
|
|
170
295
|
const includeCode = options.includeCode !== false;
|
|
171
|
-
const
|
|
296
|
+
const includeCodeChunks = options.includeCodeChunks ?? false;
|
|
297
|
+
const includeCorpusChunks = options.includeCorpusChunks ?? false;
|
|
298
|
+
const includeDocumentChunks = (options.includeDocumentChunks ?? false) || includeCorpusChunks;
|
|
299
|
+
const shouldBuildCodeChunks = includeCode && (includeCodeChunks || includeCorpusChunks);
|
|
172
300
|
const includeCodeDocumentReferences = options.includeCodeDocumentReferences ?? true;
|
|
301
|
+
const concurrentPhases = options.concurrentPhases !== false;
|
|
173
302
|
const onProgress = options.onProgress;
|
|
174
303
|
const errors = [];
|
|
175
304
|
const shared = commonWorkspaceOptions(options);
|
|
176
305
|
const steps = [
|
|
177
|
-
...(includeDescription ? [
|
|
178
|
-
...(includeAnalysis ? [
|
|
179
|
-
...(includeDocuments ? [
|
|
180
|
-
...(includeCode ? [
|
|
181
|
-
...(includeCode ? [
|
|
182
|
-
...(
|
|
183
|
-
|
|
306
|
+
...(includeDescription ? [STEP_DESCRIPTION] : []),
|
|
307
|
+
...(includeAnalysis ? [STEP_ANALYSIS] : []),
|
|
308
|
+
...(includeDocuments ? [STEP_DOCUMENTS] : []),
|
|
309
|
+
...(includeCode ? [STEP_CODE_PREVIEW] : []),
|
|
310
|
+
...(includeCode ? [STEP_CODE_INDEX] : []),
|
|
311
|
+
...(shouldBuildCodeChunks ? [STEP_CODE_CHUNK] : []),
|
|
312
|
+
...(includeDocumentChunks ? [STEP_DOCUMENT_CHUNK] : []),
|
|
313
|
+
STEP_OUTLINE,
|
|
184
314
|
];
|
|
185
315
|
let completedSteps = 0;
|
|
316
|
+
const scopedCodeProgress = (event) => onProgress?.({ ...event, scope: event.scope ?? 'code' });
|
|
317
|
+
// Resolves the code index either through a persistent store (cacheDir/store
|
|
318
|
+
// options — cache hits skip parsing, misses build in-process) or through the
|
|
319
|
+
// pre-existing isolated subprocess build.
|
|
320
|
+
const acquireCodeIndex = async () => {
|
|
321
|
+
const slim = options.slimCodeIndex ?? true;
|
|
322
|
+
const contentMode = shouldBuildCodeChunks
|
|
323
|
+
? 'full'
|
|
324
|
+
: (options.contentMode ?? (slim ? 'none' : 'excerpt'));
|
|
325
|
+
if (options.store || options.cacheDir) {
|
|
326
|
+
const store = options.store ?? openCodeIndexStore({
|
|
327
|
+
repoRoot: resolvedRoot,
|
|
328
|
+
cacheDir: options.cacheDir,
|
|
329
|
+
excludeDir: shared.excludeDir,
|
|
330
|
+
noGitignore: shared.noGitignore,
|
|
331
|
+
ignorePatterns: shared.ignorePatterns,
|
|
332
|
+
overlayIgnorePatterns: shared.overlayIgnorePatterns,
|
|
333
|
+
contentMode,
|
|
334
|
+
maxFiles: options.maxCodeFiles,
|
|
335
|
+
maxBytes: options.maxCodeBytes,
|
|
336
|
+
onBudgetExceeded: 'truncate',
|
|
337
|
+
});
|
|
338
|
+
const session = await store.getSession({
|
|
339
|
+
strategy: options.cacheStrategy ?? 'ensure-fresh',
|
|
340
|
+
signal: options.signal,
|
|
341
|
+
onProgress: scopedCodeProgress,
|
|
342
|
+
});
|
|
343
|
+
const index = session.getIndex();
|
|
344
|
+
return {
|
|
345
|
+
codeIndex: slim ? slimifyIndex(index) : index,
|
|
346
|
+
chunkSource: index.contentMode === 'full' ? index : undefined,
|
|
347
|
+
};
|
|
348
|
+
}
|
|
349
|
+
const index = await buildCodebaseIndexIsolated({
|
|
350
|
+
repoRoot: resolvedRoot,
|
|
351
|
+
...shared,
|
|
352
|
+
contentMode,
|
|
353
|
+
maxFiles: options.maxCodeFiles,
|
|
354
|
+
maxBytes: options.maxCodeBytes,
|
|
355
|
+
onBudgetExceeded: 'truncate',
|
|
356
|
+
slim: false,
|
|
357
|
+
signal: options.signal,
|
|
358
|
+
}, scopedCodeProgress);
|
|
359
|
+
return {
|
|
360
|
+
codeIndex: slim ? slimifyIndex(index) : index,
|
|
361
|
+
chunkSource: index.contentMode === 'full' ? index : undefined,
|
|
362
|
+
};
|
|
363
|
+
};
|
|
186
364
|
reportStep(onProgress, { phase: 'bundle', detail: 'Workspace bundle started' }, completedSteps, steps.length, startedAt);
|
|
187
365
|
let description;
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
366
|
+
let analysis;
|
|
367
|
+
let documents;
|
|
368
|
+
let codePreview;
|
|
369
|
+
let codeIndex;
|
|
370
|
+
let codeChunkSource;
|
|
371
|
+
if (concurrentPhases) {
|
|
372
|
+
// Phases run concurrently as error-capturing tasks. Errors are collected
|
|
373
|
+
// per phase and assembled post-join in the canonical sequential order
|
|
374
|
+
// (description, analysis, documents, code-preview, code) so errors[]
|
|
375
|
+
// content and order match the concurrentPhases: false path. Step
|
|
376
|
+
// completion order may vary; the shared counter stays monotonic and inner
|
|
377
|
+
// per-phase events are already scope-tagged. Once the signal aborts, tasks
|
|
378
|
+
// skip un-started phase bodies and suppress further step emissions; the
|
|
379
|
+
// post-join abortIfNeeded turns the abort into a rejection.
|
|
380
|
+
let caughtAbort;
|
|
381
|
+
const phaseErrors = {
|
|
382
|
+
'description': [],
|
|
383
|
+
'analysis': [],
|
|
384
|
+
'documents': [],
|
|
385
|
+
'code-preview': [],
|
|
386
|
+
'code': [],
|
|
387
|
+
};
|
|
388
|
+
const capture = (scope, err) => {
|
|
389
|
+
if (isOccAbortError(err)) {
|
|
390
|
+
caughtAbort ??= err;
|
|
391
|
+
return;
|
|
392
|
+
}
|
|
194
393
|
const error = err;
|
|
195
|
-
|
|
394
|
+
phaseErrors[scope].push({ scope, path: resolvedRoot, message: error.message });
|
|
395
|
+
};
|
|
396
|
+
const tasks = [];
|
|
397
|
+
if (includeDescription) {
|
|
398
|
+
tasks.push((async () => {
|
|
399
|
+
if (options.signal?.aborted)
|
|
400
|
+
return; // already aborted — skip the phase entirely
|
|
401
|
+
try {
|
|
402
|
+
description = await describeWorkspace(resolvedRoot, shared);
|
|
403
|
+
}
|
|
404
|
+
catch (err) {
|
|
405
|
+
capture('description', err);
|
|
406
|
+
}
|
|
407
|
+
if (options.signal?.aborted)
|
|
408
|
+
return; // aborted mid-phase — suppress the completion event
|
|
409
|
+
reportStep(onProgress, STEP_DESCRIPTION, ++completedSteps, steps.length, startedAt);
|
|
410
|
+
})());
|
|
196
411
|
}
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
412
|
+
if (includeAnalysis) {
|
|
413
|
+
tasks.push((async () => {
|
|
414
|
+
if (options.signal?.aborted)
|
|
415
|
+
return; // already aborted — skip the phase entirely
|
|
416
|
+
try {
|
|
417
|
+
analysis = await analyzeWorkspace(resolvedRoot, {
|
|
418
|
+
...shared,
|
|
419
|
+
includeDocuments,
|
|
420
|
+
includeCode,
|
|
421
|
+
}, (event) => onProgress?.({ ...event, scope: event.scope ?? 'workspace' }));
|
|
422
|
+
}
|
|
423
|
+
catch (err) {
|
|
424
|
+
capture('analysis', err);
|
|
425
|
+
}
|
|
426
|
+
if (options.signal?.aborted)
|
|
427
|
+
return; // aborted mid-phase — suppress the completion event
|
|
428
|
+
reportStep(onProgress, STEP_ANALYSIS, ++completedSteps, steps.length, startedAt);
|
|
429
|
+
})());
|
|
208
430
|
}
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
431
|
+
if (includeDocuments) {
|
|
432
|
+
tasks.push((async () => {
|
|
433
|
+
if (options.signal?.aborted)
|
|
434
|
+
return; // already aborted — skip the phase entirely
|
|
435
|
+
try {
|
|
436
|
+
documents = await inspectWorkspaceDocumentSet(resolvedRoot, {
|
|
437
|
+
...shared,
|
|
438
|
+
includeMarkdown: includeCodeDocumentReferences,
|
|
439
|
+
includeDataFiles: options.includeDataFiles,
|
|
440
|
+
maxFiles: options.maxDocumentFiles,
|
|
441
|
+
maxReferenceFiles: options.maxReferenceFiles,
|
|
442
|
+
}, (event) => onProgress?.({ ...event, scope: event.scope ?? 'document' }));
|
|
443
|
+
}
|
|
444
|
+
catch (err) {
|
|
445
|
+
capture('documents', err);
|
|
446
|
+
}
|
|
447
|
+
if (options.signal?.aborted)
|
|
448
|
+
return; // aborted mid-phase — suppress the completion event
|
|
449
|
+
reportStep(onProgress, STEP_DOCUMENTS, ++completedSteps, steps.length, startedAt);
|
|
450
|
+
})());
|
|
212
451
|
}
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
452
|
+
if (includeCode) {
|
|
453
|
+
// Code preview then index — sequential within this task.
|
|
454
|
+
tasks.push((async () => {
|
|
455
|
+
if (options.signal?.aborted)
|
|
456
|
+
return; // already aborted — skip the phase entirely
|
|
457
|
+
try {
|
|
458
|
+
codePreview = await previewCodebaseSize({
|
|
459
|
+
repoRoot: resolvedRoot,
|
|
460
|
+
...shared,
|
|
461
|
+
maxFiles: options.maxCodeFiles,
|
|
462
|
+
maxBytes: options.maxCodeBytes,
|
|
463
|
+
signal: options.signal,
|
|
464
|
+
});
|
|
465
|
+
}
|
|
466
|
+
catch (err) {
|
|
467
|
+
capture('code-preview', err);
|
|
468
|
+
}
|
|
469
|
+
if (options.signal?.aborted)
|
|
470
|
+
return; // aborted mid-phase — suppress events and skip the index build
|
|
471
|
+
reportStep(onProgress, STEP_CODE_PREVIEW, ++completedSteps, steps.length, startedAt);
|
|
472
|
+
if (options.signal?.aborted)
|
|
473
|
+
return; // abort fired from the preview step emission
|
|
474
|
+
try {
|
|
475
|
+
const acquired = await acquireCodeIndex();
|
|
476
|
+
codeIndex = acquired.codeIndex;
|
|
477
|
+
codeChunkSource = acquired.chunkSource;
|
|
478
|
+
}
|
|
479
|
+
catch (err) {
|
|
480
|
+
capture('code', err);
|
|
481
|
+
}
|
|
482
|
+
if (options.signal?.aborted)
|
|
483
|
+
return; // aborted mid-phase — suppress the completion event
|
|
484
|
+
reportStep(onProgress, STEP_CODE_INDEX, ++completedSteps, steps.length, startedAt);
|
|
485
|
+
})());
|
|
486
|
+
}
|
|
487
|
+
await Promise.all(tasks);
|
|
488
|
+
errors.push(...phaseErrors.description, ...phaseErrors.analysis, ...phaseErrors.documents, ...phaseErrors['code-preview'], ...phaseErrors.code);
|
|
217
489
|
abortIfNeeded(options.signal);
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
490
|
+
if (caughtAbort)
|
|
491
|
+
throw caughtAbort;
|
|
492
|
+
}
|
|
493
|
+
else {
|
|
494
|
+
if (includeDescription) {
|
|
495
|
+
abortIfNeeded(options.signal);
|
|
496
|
+
try {
|
|
497
|
+
description = await describeWorkspace(resolvedRoot, shared);
|
|
498
|
+
}
|
|
499
|
+
catch (err) {
|
|
500
|
+
const error = err;
|
|
501
|
+
errors.push({ scope: 'description', path: resolvedRoot, message: error.message });
|
|
502
|
+
}
|
|
503
|
+
reportStep(onProgress, steps[completedSteps], ++completedSteps, steps.length, startedAt);
|
|
226
504
|
}
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
505
|
+
if (includeAnalysis) {
|
|
506
|
+
abortIfNeeded(options.signal);
|
|
507
|
+
try {
|
|
508
|
+
analysis = await analyzeWorkspace(resolvedRoot, {
|
|
509
|
+
...shared,
|
|
510
|
+
includeDocuments,
|
|
511
|
+
includeCode,
|
|
512
|
+
}, (event) => onProgress?.({ ...event, scope: event.scope ?? 'workspace' }));
|
|
513
|
+
}
|
|
514
|
+
catch (err) {
|
|
515
|
+
const error = err;
|
|
516
|
+
errors.push({ scope: 'analysis', path: resolvedRoot, message: error.message });
|
|
517
|
+
}
|
|
518
|
+
reportStep(onProgress, steps[completedSteps], ++completedSteps, steps.length, startedAt);
|
|
230
519
|
}
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
...
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
520
|
+
if (includeDocuments) {
|
|
521
|
+
abortIfNeeded(options.signal);
|
|
522
|
+
try {
|
|
523
|
+
documents = await inspectWorkspaceDocumentSet(resolvedRoot, {
|
|
524
|
+
...shared,
|
|
525
|
+
includeMarkdown: includeCodeDocumentReferences,
|
|
526
|
+
includeDataFiles: options.includeDataFiles,
|
|
527
|
+
maxFiles: options.maxDocumentFiles,
|
|
528
|
+
maxReferenceFiles: options.maxReferenceFiles,
|
|
529
|
+
}, (event) => onProgress?.({ ...event, scope: event.scope ?? 'document' }));
|
|
530
|
+
}
|
|
531
|
+
catch (err) {
|
|
532
|
+
const error = err;
|
|
533
|
+
errors.push({ scope: 'documents', path: resolvedRoot, message: error.message });
|
|
534
|
+
}
|
|
535
|
+
reportStep(onProgress, steps[completedSteps], ++completedSteps, steps.length, startedAt);
|
|
245
536
|
}
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
537
|
+
if (includeCode) {
|
|
538
|
+
abortIfNeeded(options.signal);
|
|
539
|
+
try {
|
|
540
|
+
codePreview = await previewCodebaseSize({
|
|
541
|
+
repoRoot: resolvedRoot,
|
|
542
|
+
...shared,
|
|
543
|
+
maxFiles: options.maxCodeFiles,
|
|
544
|
+
maxBytes: options.maxCodeBytes,
|
|
545
|
+
signal: options.signal,
|
|
546
|
+
});
|
|
547
|
+
}
|
|
548
|
+
catch (err) {
|
|
549
|
+
const error = err;
|
|
550
|
+
errors.push({ scope: 'code-preview', path: resolvedRoot, message: error.message });
|
|
551
|
+
}
|
|
552
|
+
reportStep(onProgress, steps[completedSteps], ++completedSteps, steps.length, startedAt);
|
|
553
|
+
abortIfNeeded(options.signal);
|
|
554
|
+
try {
|
|
555
|
+
const acquired = await acquireCodeIndex();
|
|
556
|
+
codeIndex = acquired.codeIndex;
|
|
557
|
+
codeChunkSource = acquired.chunkSource;
|
|
558
|
+
}
|
|
559
|
+
catch (err) {
|
|
560
|
+
const error = err;
|
|
561
|
+
errors.push({ scope: 'code', path: resolvedRoot, message: error.message });
|
|
562
|
+
}
|
|
563
|
+
reportStep(onProgress, steps[completedSteps], ++completedSteps, steps.length, startedAt);
|
|
249
564
|
}
|
|
250
|
-
|
|
251
|
-
|
|
565
|
+
}
|
|
566
|
+
let codeChunks;
|
|
567
|
+
if (shouldBuildCodeChunks) {
|
|
252
568
|
try {
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
contentMode: options.contentMode ?? (slim ? 'none' : 'excerpt'),
|
|
258
|
-
maxFiles: options.maxCodeFiles,
|
|
259
|
-
maxBytes: options.maxCodeBytes,
|
|
260
|
-
onBudgetExceeded: 'truncate',
|
|
261
|
-
slim,
|
|
262
|
-
signal: options.signal,
|
|
263
|
-
}, (event) => onProgress?.({ ...event, scope: event.scope ?? 'code' }));
|
|
569
|
+
if (!codeChunkSource) {
|
|
570
|
+
throw new Error('Code chunks require a full-content code index.');
|
|
571
|
+
}
|
|
572
|
+
codeChunks = buildCodeChunks(codeChunkSource, options, onProgress);
|
|
264
573
|
}
|
|
265
574
|
catch (err) {
|
|
266
575
|
const error = err;
|
|
267
|
-
errors.push({ scope: 'code', path: resolvedRoot, message: error.message });
|
|
576
|
+
errors.push({ scope: 'code-chunk', path: resolvedRoot, message: error.message });
|
|
577
|
+
codeChunks = [];
|
|
268
578
|
}
|
|
269
579
|
reportStep(onProgress, steps[completedSteps], ++completedSteps, steps.length, startedAt);
|
|
270
580
|
}
|
|
@@ -288,6 +598,8 @@ export async function bundleWorkspace(rootDir, options = {}) {
|
|
|
288
598
|
codePreview,
|
|
289
599
|
codeIndex,
|
|
290
600
|
documentChunks,
|
|
601
|
+
codeChunks,
|
|
602
|
+
corpusChunks: buildCorpusChunks(codeChunks, documentChunks, options),
|
|
291
603
|
outline,
|
|
292
604
|
codeDocumentReferences,
|
|
293
605
|
errors,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../../src/workspace/bundle.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../../src/workspace/bundle.ts"],"names":[],"mappings":"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"}
|