@cesarandreslopez/occ 0.8.6 → 0.8.7
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 +42 -8
- package/dist/src/code/build.d.ts +23 -0
- package/dist/src/code/build.js +88 -3
- package/dist/src/code/build.js.map +1 -1
- package/dist/src/code/chunk.d.ts +6 -4
- package/dist/src/code/chunk.js +44 -28
- package/dist/src/code/chunk.js.map +1 -1
- package/dist/src/code/index-io.d.ts +2 -1
- package/dist/src/code/index-io.js +2 -0
- package/dist/src/code/index-io.js.map +1 -1
- package/dist/src/code/isolated-runner.d.ts +1 -0
- package/dist/src/code/isolated-runner.js +38 -0
- package/dist/src/code/isolated-runner.js.map +1 -0
- package/dist/src/code/isolated.d.ts +9 -0
- package/dist/src/code/isolated.js +98 -0
- package/dist/src/code/isolated.js.map +1 -0
- package/dist/src/code/languages.d.ts +2 -0
- package/dist/src/code/languages.js +9 -1
- package/dist/src/code/languages.js.map +1 -1
- package/dist/src/code/parsers.js +78 -0
- package/dist/src/code/parsers.js.map +1 -1
- package/dist/src/code/preview.d.ts +34 -0
- package/dist/src/code/preview.js +90 -0
- package/dist/src/code/preview.js.map +1 -0
- package/dist/src/code/query.js +20 -7
- package/dist/src/code/query.js.map +1 -1
- package/dist/src/code/session.d.ts +2 -4
- package/dist/src/code/session.js.map +1 -1
- package/dist/src/code/slim.d.ts +247 -0
- package/dist/src/code/slim.js +40 -0
- package/dist/src/code/slim.js.map +1 -0
- package/dist/src/code/store.d.ts +6 -0
- package/dist/src/code/store.js +13 -0
- package/dist/src/code/store.js.map +1 -1
- package/dist/src/code/types.d.ts +27 -0
- package/dist/src/code/types.js +10 -0
- package/dist/src/code/types.js.map +1 -1
- package/dist/src/index.d.ts +22 -6
- package/dist/src/index.js +12 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/progress-event.d.ts +2 -1
- package/dist/src/workspace/describe.js +132 -2
- package/dist/src/workspace/describe.js.map +1 -1
- package/dist/src/workspace/types.d.ts +38 -0
- package/dist/src/workspace/types.js +16 -0
- package/dist/src/workspace/types.js.map +1 -1
- package/package.json +23 -1
package/README.md
CHANGED
|
@@ -25,7 +25,7 @@ OCC started as a way to make office documents visible in the same workflows that
|
|
|
25
25
|
- analyze workspaces for combined code, document, and structure metrics (`occ workspace analyze`) and cross-document references (`occ workspace documents`)
|
|
26
26
|
- quickly describe whether a directory is a code, office, documentation, data, or mixed project (`occ describe`, `occ workspace describe`)
|
|
27
27
|
- summarize code metrics through `scc`
|
|
28
|
-
- explore JavaScript, TypeScript, and Python repositories with symbol search, call analysis, dependency inspection, and inheritance queries (`occ code`)
|
|
28
|
+
- explore JavaScript, TypeScript, Vue Single-File Components, and Python repositories with symbol search, call analysis, dependency inspection, and inheritance queries (`occ code`)
|
|
29
29
|
|
|
30
30
|
## Features
|
|
31
31
|
|
|
@@ -37,7 +37,7 @@ OCC started as a way to make office documents visible in the same workflows that
|
|
|
37
37
|
- **Presentation inspection via `occ slide inspect`** — metadata, risk flags, per-slide inventory, and content preview for PPTX and ODP
|
|
38
38
|
- **Table extraction via `occ table inspect`** — structured table content from DOCX, XLSX, PPTX, ODT, and ODP with auto-detected headers, sample row limits, and merged cell support
|
|
39
39
|
- **Code metrics via scc** — auto-detects code files and integrates scc output
|
|
40
|
-
- **Code exploration via `occ code`** — JS/TS and Python-first symbol lookup, content search, callers/callees, dependency categories, inheritance, module coupling, and ambiguity-aware chains
|
|
40
|
+
- **Code exploration via `occ code`** — JS/TS, Vue SFC, and Python-first symbol lookup, content search, callers/callees, dependency categories, inheritance, module coupling, and ambiguity-aware chains
|
|
41
41
|
- **Workspace analysis via `occ workspace`** — fast directory description plus combined code, document, and structure analysis with versioned JSON contracts, per-document summaries, and cross-reference detection
|
|
42
42
|
- **Multiple output modes** — grouped by type, per-file breakdown, or JSON
|
|
43
43
|
- **CI-friendly** — ASCII-only, no-color mode for pipelines
|
|
@@ -217,7 +217,7 @@ Scanned 23 documents (56,750 words, 201 pages) in 120ms
|
|
|
217
217
|
|
|
218
218
|
`occ code` adds on-demand code exploration without changing the existing document-scan workflow. It builds an in-memory repository graph for each command and does not require a database, daemon, or background indexer.
|
|
219
219
|
|
|
220
|
-
The first-class support path is **JavaScript, TypeScript, and Python**. Other languages may be discovered and partially parsed, but the current resolver, fixtures, and output contracts are intentionally optimized around JS/TS and Python behavior.
|
|
220
|
+
The first-class support path is **JavaScript, TypeScript, Vue Single-File Components, and Python**. Other languages may be discovered and partially parsed, but the current resolver, fixtures, and output contracts are intentionally optimized around JS/TS, Vue SFC, and Python behavior.
|
|
221
221
|
|
|
222
222
|
```bash
|
|
223
223
|
# Exact symbol lookup
|
|
@@ -316,6 +316,37 @@ const analysis = await occ.workspace.analyze('./my-project', { includeCode: true
|
|
|
316
316
|
const doc = await occ.doc.inspect('report.docx', {});
|
|
317
317
|
```
|
|
318
318
|
|
|
319
|
+
For large or untrusted repositories, preview the size first, then build the index in an isolated subprocess with a budget. Pair with the slim variant when the consumer only needs the graph (no source content):
|
|
320
|
+
|
|
321
|
+
```ts
|
|
322
|
+
import { createOcc, CodeIndexBudgetExceededError } from '@cesarandreslopez/occ';
|
|
323
|
+
|
|
324
|
+
const occ = createOcc();
|
|
325
|
+
|
|
326
|
+
const preview = await occ.code.previewSize({ repoRoot: './my-repo', maxFiles: 5_000, maxBytes: 32 * 1024 * 1024 });
|
|
327
|
+
if (preview.exceedsBudget) {
|
|
328
|
+
console.warn('Repo exceeds preview budget:', preview.exceedsBudget);
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
try {
|
|
332
|
+
const slim = await occ.code.buildIndexIsolated({
|
|
333
|
+
repoRoot: './my-repo',
|
|
334
|
+
contentMode: 'excerpt',
|
|
335
|
+
maxFiles: 5_000,
|
|
336
|
+
maxBytes: 32 * 1024 * 1024,
|
|
337
|
+
onBudgetExceeded: 'truncate',
|
|
338
|
+
slim: true,
|
|
339
|
+
});
|
|
340
|
+
if (slim.truncated) console.warn('Index truncated:', slim.truncated);
|
|
341
|
+
} catch (error) {
|
|
342
|
+
if (error instanceof CodeIndexBudgetExceededError) {
|
|
343
|
+
console.error('Build budget exceeded:', error.budget);
|
|
344
|
+
} else {
|
|
345
|
+
throw error;
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
```
|
|
349
|
+
|
|
319
350
|
For workspace-level analysis:
|
|
320
351
|
|
|
321
352
|
```ts
|
|
@@ -332,13 +363,16 @@ Available subpath exports:
|
|
|
332
363
|
|
|
333
364
|
| Import path | Description |
|
|
334
365
|
|-------------|-------------|
|
|
335
|
-
| `@cesarandreslopez/occ/code/build` | `buildCodebaseIndex` — graph construction |
|
|
336
|
-
| `@cesarandreslopez/occ/code/types` | TypeScript types (`CodebaseIndex`, `CodeNode`, `CodeEdge`, etc.) |
|
|
366
|
+
| `@cesarandreslopez/occ/code/build` | `buildCodebaseIndex` — graph construction (with optional `maxFiles`/`maxBytes`/`onBudgetExceeded` budget controls and `CodeIndexBudgetExceededError`) |
|
|
367
|
+
| `@cesarandreslopez/occ/code/types` | TypeScript types (`CodebaseIndex`, `CodeNode`, `CodeEdge`, `IndexTruncation`, etc.) |
|
|
337
368
|
| `@cesarandreslopez/occ/code/query` | Query functions (`findByName`, `analyzeCalls`, `analyzeDeps`, etc.) |
|
|
338
369
|
| `@cesarandreslopez/occ/code/discover` | `discoverCodeFiles` — file discovery |
|
|
339
|
-
| `@cesarandreslopez/occ/code/
|
|
370
|
+
| `@cesarandreslopez/occ/code/preview` | `previewCodebaseSize` — cheap size + per-language estimate without parsing, with budget pressure reporting |
|
|
371
|
+
| `@cesarandreslopez/occ/code/isolated` | `buildCodebaseIndexIsolated` — runs `buildCodebaseIndex` in a forked subprocess, optionally returning a slim index |
|
|
372
|
+
| `@cesarandreslopez/occ/code/slim` | `slimifyIndex`, `parseSlimIndex`, `validateSlimIndex` — content-free `CodebaseIndexSlim` for graph-only consumers |
|
|
373
|
+
| `@cesarandreslopez/occ/code/chunk` | `chunkCodebase`, `chunkFromIndex` — semantic code chunking (word- or token-based via `maxTokens`/`countTokens`) |
|
|
340
374
|
| `@cesarandreslopez/occ/code/session` | `createCodeQuerySession` — stateful code query session |
|
|
341
|
-
| `@cesarandreslopez/occ/code/store` | `openCodeIndexStore` — persistent index store with cache strategies |
|
|
375
|
+
| `@cesarandreslopez/occ/code/store` | `openCodeIndexStore`, `openChunkCodeIndexStore` — persistent index store with cache strategies (the chunk variant pins `contentMode: 'full'`) |
|
|
342
376
|
| `@cesarandreslopez/occ/code/cache` | Index caching utilities (legacy — prefer `./code/store`) |
|
|
343
377
|
| `@cesarandreslopez/occ/doc/inspect` | `inspectDocument` — document metadata and content extraction |
|
|
344
378
|
| `@cesarandreslopez/occ/doc/types` | Document inspection types |
|
|
@@ -550,7 +584,7 @@ OCC is written in TypeScript and uses [fast-glob](https://github.com/mrmlnc/fast
|
|
|
550
584
|
|
|
551
585
|
For structure extraction (`--structure`), documents are first converted to markdown (mammoth + [turndown](https://github.com/mixmark-io/turndown) for DOCX, pdf-parse with page markers for PDF), then headers are extracted and assembled into a tree with dotted section codes.
|
|
552
586
|
|
|
553
|
-
For `occ code`, OCC builds an in-memory code graph on demand. JavaScript and TypeScript are parsed with the TypeScript compiler API, Python uses a language-specific parser, and the query engine resolves symbols, imports, calls, inheritance, ambiguities, and dependency categories without a persistent database.
|
|
587
|
+
For `occ code`, OCC builds an in-memory code graph on demand. JavaScript and TypeScript are parsed with the TypeScript compiler API, Vue Single-File Components are split with `@vue/compiler-sfc` and forwarded into the same TS pipeline, Python uses a language-specific parser, and the query engine resolves symbols, imports, calls, inheritance, ambiguities, and dependency categories without a persistent database.
|
|
554
588
|
|
|
555
589
|
## Contributing
|
|
556
590
|
|
package/dist/src/code/build.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import type { CodebaseIndex } from './types.js';
|
|
3
3
|
import type { OnProgress } from '../progress-event.js';
|
|
4
|
+
export declare const BudgetExceededBehaviorSchema: z.ZodEnum<{
|
|
5
|
+
truncate: "truncate";
|
|
6
|
+
throw: "throw";
|
|
7
|
+
}>;
|
|
8
|
+
export type BudgetExceededBehavior = z.infer<typeof BudgetExceededBehaviorSchema>;
|
|
4
9
|
export declare const BuildCodebaseOptionsSchema: z.ZodObject<{
|
|
5
10
|
repoRoot: z.ZodString;
|
|
6
11
|
excludeDir: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
@@ -15,6 +20,24 @@ export declare const BuildCodebaseOptionsSchema: z.ZodObject<{
|
|
|
15
20
|
maxFileSizeBytes: z.ZodOptional<z.ZodNumber>;
|
|
16
21
|
maxLines: z.ZodOptional<z.ZodNumber>;
|
|
17
22
|
skipMinified: z.ZodOptional<z.ZodBoolean>;
|
|
23
|
+
maxFiles: z.ZodOptional<z.ZodNumber>;
|
|
24
|
+
maxBytes: z.ZodOptional<z.ZodNumber>;
|
|
25
|
+
onBudgetExceeded: z.ZodOptional<z.ZodEnum<{
|
|
26
|
+
truncate: "truncate";
|
|
27
|
+
throw: "throw";
|
|
28
|
+
}>>;
|
|
18
29
|
}, z.core.$strip>;
|
|
19
30
|
export type BuildCodebaseOptions = z.infer<typeof BuildCodebaseOptionsSchema>;
|
|
31
|
+
export interface CodeIndexBudget {
|
|
32
|
+
maxFiles?: number;
|
|
33
|
+
maxBytes?: number;
|
|
34
|
+
totalFiles: number;
|
|
35
|
+
totalBytes: number;
|
|
36
|
+
}
|
|
37
|
+
export declare class CodeIndexBudgetExceededError extends Error {
|
|
38
|
+
readonly name = "CodeIndexBudgetExceededError";
|
|
39
|
+
readonly code = "OCC_CODE_INDEX_BUDGET_EXCEEDED";
|
|
40
|
+
readonly budget: CodeIndexBudget;
|
|
41
|
+
constructor(budget: CodeIndexBudget);
|
|
42
|
+
}
|
|
20
43
|
export declare function buildCodebaseIndex(options: BuildCodebaseOptions, onProgress?: OnProgress, signal?: AbortSignal): Promise<CodebaseIndex>;
|
package/dist/src/code/build.js
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import path from 'node:path';
|
|
2
|
+
import { stat } from 'node:fs/promises';
|
|
2
3
|
import { z } from 'zod';
|
|
3
4
|
import { discoverCodeFiles } from './discover.js';
|
|
4
5
|
import { getLanguageSpec, getModuleName, normalizePath } from './languages.js';
|
|
5
6
|
import { parseCodeFile } from './parsers.js';
|
|
6
7
|
import { extractKeySection } from './query.js';
|
|
7
8
|
import { abortIfNeeded } from '../utils.js';
|
|
9
|
+
export const BudgetExceededBehaviorSchema = z.enum(['throw', 'truncate']);
|
|
8
10
|
export const BuildCodebaseOptionsSchema = z.object({
|
|
9
11
|
repoRoot: z.string(),
|
|
10
12
|
excludeDir: z.array(z.string()).optional(),
|
|
@@ -15,7 +17,27 @@ export const BuildCodebaseOptionsSchema = z.object({
|
|
|
15
17
|
maxFileSizeBytes: z.number().optional(),
|
|
16
18
|
maxLines: z.number().optional(),
|
|
17
19
|
skipMinified: z.boolean().optional(),
|
|
20
|
+
maxFiles: z.number().int().positive().optional(),
|
|
21
|
+
maxBytes: z.number().int().positive().optional(),
|
|
22
|
+
onBudgetExceeded: BudgetExceededBehaviorSchema.optional(),
|
|
18
23
|
});
|
|
24
|
+
export class CodeIndexBudgetExceededError extends Error {
|
|
25
|
+
name = 'CodeIndexBudgetExceededError';
|
|
26
|
+
code = 'OCC_CODE_INDEX_BUDGET_EXCEEDED';
|
|
27
|
+
budget;
|
|
28
|
+
constructor(budget) {
|
|
29
|
+
const reasons = [
|
|
30
|
+
budget.maxFiles != null && budget.totalFiles > budget.maxFiles
|
|
31
|
+
? `files ${budget.totalFiles}/${budget.maxFiles}`
|
|
32
|
+
: undefined,
|
|
33
|
+
budget.maxBytes != null && budget.totalBytes > budget.maxBytes
|
|
34
|
+
? `bytes ${budget.totalBytes}/${budget.maxBytes}`
|
|
35
|
+
: undefined,
|
|
36
|
+
].filter(Boolean).join(', ');
|
|
37
|
+
super(`Code index budget exceeded (${reasons}).`);
|
|
38
|
+
this.budget = budget;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
19
41
|
function makeId(prefix, ...parts) {
|
|
20
42
|
return [prefix, ...parts.filter((part) => part != null)].join(':');
|
|
21
43
|
}
|
|
@@ -56,6 +78,66 @@ function applyContentMode(file, contentMode) {
|
|
|
56
78
|
excerpt: undefined,
|
|
57
79
|
};
|
|
58
80
|
}
|
|
81
|
+
async function withFileSizes(filePaths, signal) {
|
|
82
|
+
const sized = [];
|
|
83
|
+
for (const filePath of filePaths) {
|
|
84
|
+
abortIfNeeded(signal);
|
|
85
|
+
try {
|
|
86
|
+
const fileStat = await stat(filePath);
|
|
87
|
+
if (fileStat.isFile()) {
|
|
88
|
+
sized.push({ path: filePath, size: fileStat.size });
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
catch {
|
|
92
|
+
// Files can disappear between discovery and stat; parsing will skip them.
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
return sized;
|
|
96
|
+
}
|
|
97
|
+
function enforceBuildBudget(discovered, options) {
|
|
98
|
+
const totalFiles = discovered.length;
|
|
99
|
+
const totalBytes = discovered.reduce((sum, file) => sum + file.size, 0);
|
|
100
|
+
const overFiles = options.maxFiles != null && totalFiles > options.maxFiles;
|
|
101
|
+
const overBytes = options.maxBytes != null && totalBytes > options.maxBytes;
|
|
102
|
+
if (!overFiles && !overBytes) {
|
|
103
|
+
return { files: discovered.map((file) => file.path) };
|
|
104
|
+
}
|
|
105
|
+
if ((options.onBudgetExceeded ?? 'throw') === 'throw') {
|
|
106
|
+
throw new CodeIndexBudgetExceededError({
|
|
107
|
+
maxFiles: options.maxFiles,
|
|
108
|
+
maxBytes: options.maxBytes,
|
|
109
|
+
totalFiles,
|
|
110
|
+
totalBytes,
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
const retained = [];
|
|
114
|
+
let retainedBytes = 0;
|
|
115
|
+
for (const file of discovered) {
|
|
116
|
+
if (options.maxFiles != null && retained.length >= options.maxFiles)
|
|
117
|
+
continue;
|
|
118
|
+
if (options.maxBytes != null && retainedBytes + file.size > options.maxBytes)
|
|
119
|
+
continue;
|
|
120
|
+
retained.push(file);
|
|
121
|
+
retainedBytes += file.size;
|
|
122
|
+
}
|
|
123
|
+
const reason = overFiles && overBytes
|
|
124
|
+
? 'maxFilesAndBytes'
|
|
125
|
+
: overFiles
|
|
126
|
+
? 'maxFiles'
|
|
127
|
+
: 'maxBytes';
|
|
128
|
+
return {
|
|
129
|
+
files: retained.map((file) => file.path),
|
|
130
|
+
truncated: {
|
|
131
|
+
reason,
|
|
132
|
+
keptFiles: retained.length,
|
|
133
|
+
droppedFiles: totalFiles - retained.length,
|
|
134
|
+
totalFiles,
|
|
135
|
+
totalBytes,
|
|
136
|
+
maxFiles: options.maxFiles,
|
|
137
|
+
maxBytes: options.maxBytes,
|
|
138
|
+
},
|
|
139
|
+
};
|
|
140
|
+
}
|
|
59
141
|
function toCandidates(nodes) {
|
|
60
142
|
if (!nodes || nodes.length === 0)
|
|
61
143
|
return undefined;
|
|
@@ -77,12 +159,14 @@ export async function buildCodebaseIndex(options, onProgress, signal) {
|
|
|
77
159
|
signal,
|
|
78
160
|
});
|
|
79
161
|
abortIfNeeded(signal);
|
|
162
|
+
const discoveredWithSizes = await withFileSizes(discovered, signal);
|
|
163
|
+
const budgeted = enforceBuildBudget(discoveredWithSizes, options);
|
|
80
164
|
onProgress?.({ phase: 'discover', total: discovered.length, completed: discovered.length, detail: 'File discovery complete' });
|
|
81
165
|
const parsedFiles = [];
|
|
82
166
|
const skippedFiles = [];
|
|
83
|
-
for (let i = 0; i <
|
|
167
|
+
for (let i = 0; i < budgeted.files.length; i++) {
|
|
84
168
|
abortIfNeeded(signal);
|
|
85
|
-
const filePath =
|
|
169
|
+
const filePath = budgeted.files[i];
|
|
86
170
|
const parsed = await parseCodeFile(filePath, { repoRoot }, {
|
|
87
171
|
maxFileSizeBytes: options.maxFileSizeBytes,
|
|
88
172
|
maxLines: options.maxLines,
|
|
@@ -98,7 +182,7 @@ export async function buildCodebaseIndex(options, onProgress, signal) {
|
|
|
98
182
|
reason: parsed.reason,
|
|
99
183
|
});
|
|
100
184
|
}
|
|
101
|
-
onProgress?.({ phase: 'parse', total:
|
|
185
|
+
onProgress?.({ phase: 'parse', total: budgeted.files.length, completed: i + 1, detail: filePath });
|
|
102
186
|
}
|
|
103
187
|
abortIfNeeded(signal);
|
|
104
188
|
const nodes = [];
|
|
@@ -442,6 +526,7 @@ export async function buildCodebaseIndex(options, onProgress, signal) {
|
|
|
442
526
|
{ ...capabilities, content: contentMode === 'full' },
|
|
443
527
|
])),
|
|
444
528
|
skippedFiles,
|
|
529
|
+
truncated: budgeted.truncated,
|
|
445
530
|
};
|
|
446
531
|
}
|
|
447
532
|
//# sourceMappingURL=build.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/code/build.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/code/build.ts"],"names":[],"mappings":"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"}
|
package/dist/src/code/chunk.d.ts
CHANGED
|
@@ -14,12 +14,14 @@ export interface CodeChunk {
|
|
|
14
14
|
endLine: number;
|
|
15
15
|
hasExports: boolean;
|
|
16
16
|
}
|
|
17
|
-
interface
|
|
17
|
+
export interface CodeChunkOptions {
|
|
18
18
|
maxChunkWords?: number;
|
|
19
19
|
overlapWords?: number;
|
|
20
|
+
maxTokens?: number;
|
|
21
|
+
overlapTokens?: number;
|
|
22
|
+
countTokens?: (text: string) => number;
|
|
20
23
|
}
|
|
21
24
|
/** Chunk files from an already-built CodebaseIndex (avoids double-parsing) */
|
|
22
|
-
export declare function chunkFromIndex(index: CodebaseIndex, options?:
|
|
25
|
+
export declare function chunkFromIndex(index: CodebaseIndex, options?: CodeChunkOptions): CodeChunk[];
|
|
23
26
|
/** Discover, parse, and chunk an entire codebase */
|
|
24
|
-
export declare function chunkCodebase(options: BuildCodebaseOptions &
|
|
25
|
-
export {};
|
|
27
|
+
export declare function chunkCodebase(options: BuildCodebaseOptions & CodeChunkOptions, onProgress?: OnProgress): Promise<CodeChunk[]>;
|
package/dist/src/code/chunk.js
CHANGED
|
@@ -2,7 +2,28 @@ import { buildCodebaseIndex } from './build.js';
|
|
|
2
2
|
import { countWords } from '../utils.js';
|
|
3
3
|
const DEFAULT_MAX_CHUNK_WORDS = 500;
|
|
4
4
|
const DEFAULT_OVERLAP_WORDS = 50;
|
|
5
|
-
|
|
5
|
+
const DEFAULT_MAX_CHUNK_TOKENS = 1_200;
|
|
6
|
+
const DEFAULT_OVERLAP_TOKENS = 120;
|
|
7
|
+
function estimateTokens(text) {
|
|
8
|
+
if (!text.trim())
|
|
9
|
+
return 0;
|
|
10
|
+
return Math.max(1, Math.ceil(text.length / 4));
|
|
11
|
+
}
|
|
12
|
+
function resolveSizer(options) {
|
|
13
|
+
if (options?.maxTokens != null) {
|
|
14
|
+
return {
|
|
15
|
+
maxUnits: options.maxTokens,
|
|
16
|
+
overlapUnits: options.overlapTokens ?? DEFAULT_OVERLAP_TOKENS,
|
|
17
|
+
count: options.countTokens ?? estimateTokens,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
return {
|
|
21
|
+
maxUnits: options?.maxChunkWords ?? DEFAULT_MAX_CHUNK_WORDS,
|
|
22
|
+
overlapUnits: options?.overlapWords ?? DEFAULT_OVERLAP_WORDS,
|
|
23
|
+
count: countWords,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
function chunkFile(file, sizer) {
|
|
6
27
|
const chunks = [];
|
|
7
28
|
const lines = file.lines;
|
|
8
29
|
if (!lines) {
|
|
@@ -10,8 +31,7 @@ function chunkFile(file, maxChunkWords, overlapWords) {
|
|
|
10
31
|
}
|
|
11
32
|
const sortedSymbols = [...file.symbols].sort((a, b) => a.line - b.line);
|
|
12
33
|
if (sortedSymbols.length === 0) {
|
|
13
|
-
|
|
14
|
-
return chunkByWords(file, lines, maxChunkWords, overlapWords);
|
|
34
|
+
return chunkByUnits(file, lines, sizer);
|
|
15
35
|
}
|
|
16
36
|
// Build symbol boundaries: each symbol starts a new potential chunk
|
|
17
37
|
const boundaries = [];
|
|
@@ -27,57 +47,54 @@ function chunkFile(file, maxChunkWords, overlapWords) {
|
|
|
27
47
|
if (boundaries.length > 0 && boundaries[0].startLine > 0) {
|
|
28
48
|
boundaries.unshift({ startLine: 0, endLine: boundaries[0].startLine - 1, symbols: [] });
|
|
29
49
|
}
|
|
30
|
-
// Merge small adjacent sections into chunks that respect
|
|
50
|
+
// Merge small adjacent sections into chunks that respect the selected budget.
|
|
31
51
|
let currentStart = boundaries[0]?.startLine ?? 0;
|
|
32
52
|
let currentEnd = boundaries[0]?.endLine ?? 0;
|
|
33
53
|
let currentSymbols = [...(boundaries[0]?.symbols ?? [])];
|
|
34
|
-
let
|
|
54
|
+
let currentUnits = sizer.count(lines.slice(currentStart, currentEnd + 1).join('\n'));
|
|
35
55
|
for (let i = 1; i < boundaries.length; i++) {
|
|
36
56
|
const section = boundaries[i];
|
|
37
57
|
const sectionText = lines.slice(section.startLine, section.endLine + 1).join('\n');
|
|
38
|
-
const
|
|
39
|
-
if (
|
|
58
|
+
const sectionUnits = sizer.count(sectionText);
|
|
59
|
+
if (currentUnits + sectionUnits <= sizer.maxUnits) {
|
|
40
60
|
currentEnd = section.endLine;
|
|
41
61
|
currentSymbols.push(...section.symbols);
|
|
42
|
-
|
|
62
|
+
currentUnits += sectionUnits;
|
|
43
63
|
}
|
|
44
64
|
else {
|
|
45
|
-
// Emit current chunk
|
|
46
65
|
emitChunk(chunks, file, lines, currentStart, currentEnd, currentSymbols);
|
|
47
|
-
|
|
48
|
-
const overlapStart = findOverlapStart(lines, currentEnd, overlapWords);
|
|
66
|
+
const overlapStart = findOverlapStart(lines, currentEnd, sizer);
|
|
49
67
|
currentStart = Math.min(overlapStart, section.startLine);
|
|
50
68
|
currentEnd = section.endLine;
|
|
51
69
|
currentSymbols = [...section.symbols];
|
|
52
|
-
|
|
70
|
+
currentUnits = sizer.count(lines.slice(currentStart, currentEnd + 1).join('\n'));
|
|
53
71
|
}
|
|
54
72
|
}
|
|
55
|
-
// Emit final chunk
|
|
56
73
|
emitChunk(chunks, file, lines, currentStart, currentEnd, currentSymbols);
|
|
57
74
|
return chunks;
|
|
58
75
|
}
|
|
59
|
-
function
|
|
76
|
+
function chunkByUnits(file, lines, sizer) {
|
|
60
77
|
const chunks = [];
|
|
61
78
|
let currentStart = 0;
|
|
62
|
-
let
|
|
79
|
+
let currentUnits = 0;
|
|
63
80
|
for (let i = 0; i < lines.length; i++) {
|
|
64
|
-
|
|
65
|
-
if (
|
|
81
|
+
currentUnits += sizer.count(lines[i]);
|
|
82
|
+
if (currentUnits >= sizer.maxUnits || i === lines.length - 1) {
|
|
66
83
|
emitChunk(chunks, file, lines, currentStart, i, []);
|
|
67
|
-
const overlapStart = findOverlapStart(lines, i,
|
|
84
|
+
const overlapStart = findOverlapStart(lines, i, sizer);
|
|
68
85
|
currentStart = overlapStart;
|
|
69
|
-
|
|
86
|
+
currentUnits = sizer.count(lines.slice(currentStart, i + 1).join('\n'));
|
|
70
87
|
}
|
|
71
88
|
}
|
|
72
89
|
return chunks;
|
|
73
90
|
}
|
|
74
|
-
function findOverlapStart(lines, endLine,
|
|
75
|
-
if (
|
|
91
|
+
function findOverlapStart(lines, endLine, sizer) {
|
|
92
|
+
if (sizer.overlapUnits <= 0)
|
|
76
93
|
return endLine + 1;
|
|
77
|
-
let
|
|
94
|
+
let units = 0;
|
|
78
95
|
for (let i = endLine; i >= 0; i--) {
|
|
79
|
-
|
|
80
|
-
if (
|
|
96
|
+
units += sizer.count(lines[i]);
|
|
97
|
+
if (units >= sizer.overlapUnits)
|
|
81
98
|
return i;
|
|
82
99
|
}
|
|
83
100
|
return 0;
|
|
@@ -109,13 +126,12 @@ function emitChunk(chunks, file, lines, startLine, endLine, symbols) {
|
|
|
109
126
|
/** Chunk files from an already-built CodebaseIndex (avoids double-parsing) */
|
|
110
127
|
export function chunkFromIndex(index, options) {
|
|
111
128
|
if (index.contentMode !== 'full') {
|
|
112
|
-
throw new Error(`chunkFromIndex requires contentMode "full". Current contentMode is "${index.contentMode}".`);
|
|
129
|
+
throw new Error(`chunkFromIndex requires contentMode "full". Current contentMode is "${index.contentMode}". Open a chunk-capable store with openChunkStore(...) or build with contentMode "full".`);
|
|
113
130
|
}
|
|
114
|
-
const
|
|
115
|
-
const overlapWords = options?.overlapWords ?? DEFAULT_OVERLAP_WORDS;
|
|
131
|
+
const sizer = resolveSizer(options);
|
|
116
132
|
const chunks = [];
|
|
117
133
|
for (const file of index.files) {
|
|
118
|
-
chunks.push(...chunkFile(file,
|
|
134
|
+
chunks.push(...chunkFile(file, sizer));
|
|
119
135
|
}
|
|
120
136
|
return chunks;
|
|
121
137
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunk.js","sourceRoot":"","sources":["../../../src/code/chunk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAA6B,MAAM,YAAY,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"chunk.js","sourceRoot":"","sources":["../../../src/code/chunk.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CodebaseIndex, CodeSkippedFile, ContentMode } from './types.js';
|
|
1
|
+
import type { CodebaseIndex, CodeSkippedFile, ContentMode, IndexTruncation } from './types.js';
|
|
2
2
|
export interface SerializedIndexMeta {
|
|
3
3
|
repoRoot: string;
|
|
4
4
|
contentMode: ContentMode;
|
|
@@ -7,6 +7,7 @@ export interface SerializedIndexMeta {
|
|
|
7
7
|
fileCount: number;
|
|
8
8
|
nodeCount: number;
|
|
9
9
|
edgeCount: number;
|
|
10
|
+
truncated?: IndexTruncation;
|
|
10
11
|
schemaVersion?: number;
|
|
11
12
|
occVersion?: string;
|
|
12
13
|
builtAt?: string;
|
|
@@ -65,6 +65,7 @@ export async function writeSectionedCodeIndex(directory, index, extraMeta = {},
|
|
|
65
65
|
fileCount: index.files.length,
|
|
66
66
|
nodeCount: index.nodes.length,
|
|
67
67
|
edgeCount: index.edges.length,
|
|
68
|
+
truncated: index.truncated,
|
|
68
69
|
...extraMeta,
|
|
69
70
|
};
|
|
70
71
|
await writeFile(metaPath(directory), JSON.stringify(meta, null, 2), 'utf8');
|
|
@@ -89,6 +90,7 @@ export async function readSectionedCodeIndex(directory, signal) {
|
|
|
89
90
|
contentMode: meta.contentMode ?? 'excerpt',
|
|
90
91
|
capabilities: meta.capabilities ?? {},
|
|
91
92
|
skippedFiles: meta.skippedFiles ?? [],
|
|
93
|
+
truncated: meta.truncated,
|
|
92
94
|
files,
|
|
93
95
|
nodes,
|
|
94
96
|
edges,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-io.js","sourceRoot":"","sources":["../../../src/code/index-io.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index-io.js","sourceRoot":"","sources":["../../../src/code/index-io.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|