@cesarandreslopez/occ 0.9.3 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/README.md +35 -6
  2. package/dist/src/cli.d.ts +16 -0
  3. package/dist/src/cli.js +46 -4
  4. package/dist/src/cli.js.map +1 -1
  5. package/dist/src/code/build.d.ts +22 -0
  6. package/dist/src/code/build.js +47 -13
  7. package/dist/src/code/build.js.map +1 -1
  8. package/dist/src/code/cache.js +30 -1
  9. package/dist/src/code/cache.js.map +1 -1
  10. package/dist/src/code/check.d.ts +39 -0
  11. package/dist/src/code/check.js +282 -0
  12. package/dist/src/code/check.js.map +1 -0
  13. package/dist/src/code/command.js +156 -64
  14. package/dist/src/code/command.js.map +1 -1
  15. package/dist/src/code/context.d.ts +54 -0
  16. package/dist/src/code/context.js +67 -0
  17. package/dist/src/code/context.js.map +1 -0
  18. package/dist/src/code/diff.d.ts +12 -2
  19. package/dist/src/code/diff.js +15 -3
  20. package/dist/src/code/diff.js.map +1 -1
  21. package/dist/src/code/discover.d.ts +2 -2
  22. package/dist/src/code/discover.js +8 -10
  23. package/dist/src/code/discover.js.map +1 -1
  24. package/dist/src/code/focus.js +34 -26
  25. package/dist/src/code/focus.js.map +1 -1
  26. package/dist/src/code/incremental.js +1 -1
  27. package/dist/src/code/incremental.js.map +1 -1
  28. package/dist/src/code/index-io.js +10 -2
  29. package/dist/src/code/index-io.js.map +1 -1
  30. package/dist/src/code/isolated-chunk-runner.js +17 -2
  31. package/dist/src/code/isolated-chunk-runner.js.map +1 -1
  32. package/dist/src/code/isolated-runner.js +17 -3
  33. package/dist/src/code/isolated-runner.js.map +1 -1
  34. package/dist/src/code/isolated.js +32 -6
  35. package/dist/src/code/isolated.js.map +1 -1
  36. package/dist/src/code/languages.d.ts +13 -0
  37. package/dist/src/code/languages.js +138 -5
  38. package/dist/src/code/languages.js.map +1 -1
  39. package/dist/src/code/map.d.ts +56 -0
  40. package/dist/src/code/map.js +161 -12
  41. package/dist/src/code/map.js.map +1 -1
  42. package/dist/src/code/parsers.js +367 -26
  43. package/dist/src/code/parsers.js.map +1 -1
  44. package/dist/src/code/preview.js +24 -22
  45. package/dist/src/code/preview.js.map +1 -1
  46. package/dist/src/code/query.js +0 -0
  47. package/dist/src/code/query.js.map +1 -1
  48. package/dist/src/code/search.d.ts +39 -0
  49. package/dist/src/code/search.js +154 -0
  50. package/dist/src/code/search.js.map +1 -0
  51. package/dist/src/code/session.d.ts +8 -2
  52. package/dist/src/code/session.js +16 -4
  53. package/dist/src/code/session.js.map +1 -1
  54. package/dist/src/code/slim.d.ts +2 -0
  55. package/dist/src/code/slim.js +16 -1
  56. package/dist/src/code/slim.js.map +1 -1
  57. package/dist/src/code/source.d.ts +44 -0
  58. package/dist/src/code/source.js +102 -0
  59. package/dist/src/code/source.js.map +1 -0
  60. package/dist/src/code/store.d.ts +23 -0
  61. package/dist/src/code/store.js +61 -6
  62. package/dist/src/code/store.js.map +1 -1
  63. package/dist/src/code/tree-sitter.d.ts +21 -0
  64. package/dist/src/code/tree-sitter.js +128 -0
  65. package/dist/src/code/tree-sitter.js.map +1 -0
  66. package/dist/src/code/types.d.ts +3 -0
  67. package/dist/src/code/types.js +2 -0
  68. package/dist/src/code/types.js.map +1 -1
  69. package/dist/src/doc/batch.d.ts +2 -0
  70. package/dist/src/doc/batch.js +3 -1
  71. package/dist/src/doc/batch.js.map +1 -1
  72. package/dist/src/doc/discover.js +2 -2
  73. package/dist/src/doc/discover.js.map +1 -1
  74. package/dist/src/doc/inspect-odt.js +3 -1
  75. package/dist/src/doc/inspect-odt.js.map +1 -1
  76. package/dist/src/doc/inspect-pdf.d.ts +6 -0
  77. package/dist/src/doc/inspect-pdf.js +11 -1
  78. package/dist/src/doc/inspect-pdf.js.map +1 -1
  79. package/dist/src/doc/inspect.js +2 -2
  80. package/dist/src/doc/inspect.js.map +1 -1
  81. package/dist/src/doc/types.d.ts +1 -0
  82. package/dist/src/doc/types.js +7 -0
  83. package/dist/src/doc/types.js.map +1 -1
  84. package/dist/src/git/api.d.ts +2 -1
  85. package/dist/src/git/api.js +15 -9
  86. package/dist/src/git/api.js.map +1 -1
  87. package/dist/src/git/client.js +5 -1
  88. package/dist/src/git/client.js.map +1 -1
  89. package/dist/src/git/output.js +2 -1
  90. package/dist/src/git/output.js.map +1 -1
  91. package/dist/src/git/parse.js +131 -2
  92. package/dist/src/git/parse.js.map +1 -1
  93. package/dist/src/git/types.d.ts +5 -5
  94. package/dist/src/health.d.ts +8 -0
  95. package/dist/src/health.js +12 -0
  96. package/dist/src/health.js.map +1 -1
  97. package/dist/src/index.d.ts +20 -6
  98. package/dist/src/index.js +13 -3
  99. package/dist/src/index.js.map +1 -1
  100. package/dist/src/inspect/xlsx-cells.js +4 -2
  101. package/dist/src/inspect/xlsx-cells.js.map +1 -1
  102. package/dist/src/markdown/convert.d.ts +9 -0
  103. package/dist/src/markdown/convert.js +23 -1
  104. package/dist/src/markdown/convert.js.map +1 -1
  105. package/dist/src/parsers/odf.js +4 -2
  106. package/dist/src/parsers/odf.js.map +1 -1
  107. package/dist/src/skills/command.d.ts +6 -0
  108. package/dist/src/skills/command.js +18 -3
  109. package/dist/src/skills/command.js.map +1 -1
  110. package/dist/src/slide/inspect-odp.js +3 -2
  111. package/dist/src/slide/inspect-odp.js.map +1 -1
  112. package/dist/src/slide/inspect-pptx.js +4 -3
  113. package/dist/src/slide/inspect-pptx.js.map +1 -1
  114. package/dist/src/stats.js +3 -1
  115. package/dist/src/stats.js.map +1 -1
  116. package/dist/src/structure/extract.js +16 -3
  117. package/dist/src/structure/extract.js.map +1 -1
  118. package/dist/src/utils.d.ts +7 -0
  119. package/dist/src/utils.js +19 -0
  120. package/dist/src/utils.js.map +1 -1
  121. package/dist/src/walker.js +15 -3
  122. package/dist/src/walker.js.map +1 -1
  123. package/dist/src/workspace/analyze.d.ts +3 -0
  124. package/dist/src/workspace/analyze.js +26 -15
  125. package/dist/src/workspace/analyze.js.map +1 -1
  126. package/dist/src/workspace/bundle.js +11 -3
  127. package/dist/src/workspace/bundle.js.map +1 -1
  128. package/dist/src/workspace/command.d.ts +6 -0
  129. package/dist/src/workspace/command.js +73 -44
  130. package/dist/src/workspace/command.js.map +1 -1
  131. package/dist/src/workspace/describe.js +22 -13
  132. package/dist/src/workspace/describe.js.map +1 -1
  133. package/dist/src/workspace/documents.d.ts +3 -0
  134. package/dist/src/workspace/documents.js +25 -14
  135. package/dist/src/workspace/documents.js.map +1 -1
  136. package/dist/src/workspace/prepare.js +3 -1
  137. package/dist/src/workspace/prepare.js.map +1 -1
  138. package/package.json +28 -12
  139. package/skills/occ/SKILL.md +17 -5
  140. package/skills/occ/reference/code.md +76 -3
  141. package/skills/occ/reference/commands.md +3 -1
  142. package/vendor/tree-sitter/c/grammar.wasm +0 -0
  143. package/vendor/tree-sitter/c/tags.scm +4 -0
  144. package/vendor/tree-sitter/c-sharp/grammar.wasm +0 -0
  145. package/vendor/tree-sitter/c-sharp/tags.scm +6 -0
  146. package/vendor/tree-sitter/cpp/grammar.wasm +0 -0
  147. package/vendor/tree-sitter/cpp/tags.scm +5 -0
  148. package/vendor/tree-sitter/go/grammar.wasm +0 -0
  149. package/vendor/tree-sitter/go/tags.scm +4 -0
  150. package/vendor/tree-sitter/java/grammar.wasm +0 -0
  151. package/vendor/tree-sitter/java/tags.scm +7 -0
  152. package/vendor/tree-sitter/kotlin/grammar.wasm +0 -0
  153. package/vendor/tree-sitter/kotlin/tags.scm +4 -0
  154. package/vendor/tree-sitter/php/grammar.wasm +0 -0
  155. package/vendor/tree-sitter/php/tags.scm +8 -0
  156. package/vendor/tree-sitter/python/grammar.wasm +0 -0
  157. package/vendor/tree-sitter/python/tags.scm +3 -0
  158. package/vendor/tree-sitter/ruby/grammar.wasm +0 -0
  159. package/vendor/tree-sitter/ruby/tags.scm +5 -0
  160. package/vendor/tree-sitter/rust/grammar.wasm +0 -0
  161. package/vendor/tree-sitter/rust/tags.scm +5 -0
  162. package/vendor/tree-sitter/scala/grammar.wasm +0 -0
  163. package/vendor/tree-sitter/scala/tags.scm +5 -0
  164. package/vendor/tree-sitter/swift/grammar.wasm +0 -0
  165. package/vendor/tree-sitter/swift/tags.scm +4 -0
@@ -48,7 +48,9 @@ function parseSimilarity(status) {
48
48
  return Number.isFinite(value) ? value : undefined;
49
49
  }
50
50
  function parseCount(value) {
51
- if (value === '-')
51
+ // git log --numstat -z prefixes the first entry of each commit with a newline,
52
+ // so trim before matching the binary sentinel.
53
+ if (value.trim() === '-')
52
54
  return null;
53
55
  const parsed = Number.parseInt(value, 10);
54
56
  if (!Number.isFinite(parsed)) {
@@ -123,12 +125,131 @@ function stripGitPathPrefix(value) {
123
125
  return value.slice(2);
124
126
  return value;
125
127
  }
128
+ // git wraps a path in double quotes and C-style-escapes it whenever the name
129
+ // contains a quote, backslash, or control character (tab/newline/…). Decode
130
+ // those escapes back to the literal bytes so downstream paths are usable.
131
+ function unquoteCStylePath(value) {
132
+ if (!value.startsWith('"'))
133
+ return value;
134
+ const bytes = [];
135
+ const pushUtf8 = (segment) => {
136
+ for (const byte of Buffer.from(segment, 'utf8'))
137
+ bytes.push(byte);
138
+ };
139
+ let i = 1;
140
+ while (i < value.length) {
141
+ const ch = value[i];
142
+ if (ch === '"')
143
+ break;
144
+ if (ch !== '\\') {
145
+ let j = i;
146
+ while (j < value.length && value[j] !== '\\' && value[j] !== '"')
147
+ j++;
148
+ pushUtf8(value.slice(i, j));
149
+ i = j;
150
+ continue;
151
+ }
152
+ const next = value[i + 1];
153
+ switch (next) {
154
+ case 'a':
155
+ bytes.push(0x07);
156
+ i += 2;
157
+ break;
158
+ case 'b':
159
+ bytes.push(0x08);
160
+ i += 2;
161
+ break;
162
+ case 't':
163
+ bytes.push(0x09);
164
+ i += 2;
165
+ break;
166
+ case 'n':
167
+ bytes.push(0x0a);
168
+ i += 2;
169
+ break;
170
+ case 'v':
171
+ bytes.push(0x0b);
172
+ i += 2;
173
+ break;
174
+ case 'f':
175
+ bytes.push(0x0c);
176
+ i += 2;
177
+ break;
178
+ case 'r':
179
+ bytes.push(0x0d);
180
+ i += 2;
181
+ break;
182
+ case '"':
183
+ bytes.push(0x22);
184
+ i += 2;
185
+ break;
186
+ case '\\':
187
+ bytes.push(0x5c);
188
+ i += 2;
189
+ break;
190
+ default: {
191
+ const octal = value.slice(i + 1, i + 4);
192
+ if (/^[0-7]{3}$/.test(octal)) {
193
+ bytes.push(Number.parseInt(octal, 8));
194
+ i += 4;
195
+ }
196
+ else if (next != null) {
197
+ pushUtf8(next);
198
+ i += 2;
199
+ }
200
+ else {
201
+ i += 1;
202
+ }
203
+ }
204
+ }
205
+ }
206
+ return Buffer.from(bytes).toString('utf8');
207
+ }
208
+ function readDiffToken(input, start) {
209
+ if (input[start] === '"') {
210
+ let i = start + 1;
211
+ while (i < input.length) {
212
+ if (input[i] === '\\') {
213
+ i += 2;
214
+ continue;
215
+ }
216
+ if (input[i] === '"')
217
+ break;
218
+ i++;
219
+ }
220
+ if (i >= input.length)
221
+ return undefined;
222
+ return { value: unquoteCStylePath(input.slice(start, i + 1)), next: i + 1 };
223
+ }
224
+ let i = start;
225
+ while (i < input.length && input[i] !== ' ')
226
+ i++;
227
+ return { value: input.slice(start, i), next: i };
228
+ }
126
229
  function parseHeaderPath(line, prefix) {
127
230
  const raw = line.slice(prefix.length);
231
+ if (raw.startsWith('"')) {
232
+ const token = readDiffToken(raw, 0);
233
+ if (token)
234
+ return stripGitPathPrefix(token.value);
235
+ }
128
236
  const pathOnly = raw.split('\t')[0];
129
237
  return stripGitPathPrefix(pathOnly);
130
238
  }
131
239
  function parseDiffGitLine(line) {
240
+ const rest = line.slice('diff --git '.length);
241
+ if (rest.startsWith('"')) {
242
+ const first = readDiffToken(rest, 0);
243
+ if (first) {
244
+ let pos = first.next;
245
+ if (rest[pos] === ' ')
246
+ pos++;
247
+ const second = readDiffToken(rest, pos);
248
+ if (second) {
249
+ return { oldPath: stripGitPathPrefix(first.value), newPath: stripGitPathPrefix(second.value) };
250
+ }
251
+ }
252
+ }
132
253
  const match = line.match(/^diff --git a\/(.+) b\/(.+)$/);
133
254
  if (!match)
134
255
  return undefined;
@@ -325,7 +446,15 @@ export function aggregateChurn(_records, _range, _sortedBy = 'churn') {
325
446
  entry.commits++;
326
447
  touchedInCommit.add(stat.path);
327
448
  }
328
- if (record.commit.authorDate > entry.lastTouched) {
449
+ // %aI carries a timezone offset, so compare the resolved instants rather
450
+ // than the raw ISO strings to keep lastTouched chronologically correct
451
+ // across commits authored in different timezones.
452
+ const recordInstant = Date.parse(record.commit.authorDate);
453
+ const entryInstant = Date.parse(entry.lastTouched);
454
+ const isNewer = Number.isNaN(recordInstant) || Number.isNaN(entryInstant)
455
+ ? record.commit.authorDate > entry.lastTouched
456
+ : recordInstant > entryInstant;
457
+ if (isNewer) {
329
458
  entry.lastTouched = record.commit.authorDate;
330
459
  }
331
460
  byPath.set(stat.path, entry);
@@ -1 +1 @@
1
- {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/git/parse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/git/parse.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,8 @@ import { z } from 'zod';
2
2
  export declare const GitFileStatusSchema: z.ZodEnum<{
3
3
  unknown: "unknown";
4
4
  added: "added";
5
- deleted: "deleted";
6
5
  modified: "modified";
6
+ deleted: "deleted";
7
7
  renamed: "renamed";
8
8
  copied: "copied";
9
9
  "type-changed": "type-changed";
@@ -14,8 +14,8 @@ export declare const GitChangedFileSchema: z.ZodObject<{
14
14
  status: z.ZodEnum<{
15
15
  unknown: "unknown";
16
16
  added: "added";
17
- deleted: "deleted";
18
17
  modified: "modified";
18
+ deleted: "deleted";
19
19
  renamed: "renamed";
20
20
  copied: "copied";
21
21
  "type-changed": "type-changed";
@@ -79,8 +79,8 @@ export declare const GitDiffSummarySchema: z.ZodObject<{
79
79
  status: z.ZodEnum<{
80
80
  unknown: "unknown";
81
81
  added: "added";
82
- deleted: "deleted";
83
82
  modified: "modified";
83
+ deleted: "deleted";
84
84
  renamed: "renamed";
85
85
  copied: "copied";
86
86
  "type-changed": "type-changed";
@@ -281,9 +281,9 @@ export type GitChurnEntry = z.infer<typeof GitChurnEntrySchema>;
281
281
  export declare const GitChurnSortSchema: z.ZodEnum<{
282
282
  added: "added";
283
283
  deleted: "deleted";
284
- churn: "churn";
285
284
  commits: "commits";
286
285
  net: "net";
286
+ churn: "churn";
287
287
  }>;
288
288
  export type GitChurnSort = z.infer<typeof GitChurnSortSchema>;
289
289
  export declare const GitChurnSummarySchema: z.ZodObject<{
@@ -315,9 +315,9 @@ export declare const GitChurnSummarySchema: z.ZodObject<{
315
315
  sortedBy: z.ZodEnum<{
316
316
  added: "added";
317
317
  deleted: "deleted";
318
- churn: "churn";
319
318
  commits: "commits";
320
319
  net: "net";
320
+ churn: "churn";
321
321
  }>;
322
322
  }, z.core.$strip>;
323
323
  export type GitChurnSummary = z.infer<typeof GitChurnSummarySchema>;
@@ -8,5 +8,13 @@ export interface OccHealth {
8
8
  tables: boolean;
9
9
  health: boolean;
10
10
  };
11
+ /**
12
+ * Fine-grained feature probes for hosts that must support multiple OCC
13
+ * versions. Keys are stable identifiers: they are only ever added, never
14
+ * renamed or removed. A missing key means the feature is unavailable, so
15
+ * `health.features?.['code.searchSymbols'] === true` is safe on any version
16
+ * (older releases simply lack the field).
17
+ */
18
+ features: Record<string, true>;
11
19
  }
12
20
  export declare function health(): Promise<OccHealth>;
@@ -1,6 +1,17 @@
1
1
  import { readFile } from 'node:fs/promises';
2
2
  import path from 'node:path';
3
3
  import { fileURLToPath } from 'node:url';
4
+ /** Feature keys advertised by this build. Only-true entries by design. */
5
+ const FEATURES = {
6
+ 'code.searchSymbols': true,
7
+ 'code.projectContext': true,
8
+ 'code.map.changed': true,
9
+ 'code.index.symbolNodeIds': true,
10
+ 'store.peekMetadata': true,
11
+ 'store.isFresh': true,
12
+ 'session.refresh.signal': true,
13
+ 'defaults.excludeDirs': true,
14
+ };
4
15
  let cachedVersion;
5
16
  async function readVersion() {
6
17
  if (cachedVersion)
@@ -33,6 +44,7 @@ export async function health() {
33
44
  tables: true,
34
45
  health: true,
35
46
  },
47
+ features: { ...FEATURES },
36
48
  };
37
49
  }
38
50
  //# sourceMappingURL=health.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAczC,IAAI,aAAiC,CAAC;AAEtC,KAAK,UAAU,WAAW;IACxB,IAAI,aAAa;QAAE,OAAO,aAAa,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,KAAK,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC;YACjF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAyB,CAAC;YACvD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC/B,OAAO,MAAM,CAAC,OAAO,CAAC;YACxB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,kCAAkC;QACpC,CAAC;IACH,CAAC;IACD,aAAa,GAAG,OAAO,CAAC;IACxB,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,MAAM;IAC1B,OAAO;QACL,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,MAAM,WAAW,EAAE;QAC5B,YAAY,EAAE;YACZ,IAAI,EAAE,IAAI;YACV,SAAS,EAAE,IAAI;YACf,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,IAAI;SACb;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAsBzC,0EAA0E;AAC1E,MAAM,QAAQ,GAAyB;IACrC,oBAAoB,EAAE,IAAI;IAC1B,qBAAqB,EAAE,IAAI;IAC3B,kBAAkB,EAAE,IAAI;IACxB,0BAA0B,EAAE,IAAI;IAChC,oBAAoB,EAAE,IAAI;IAC1B,eAAe,EAAE,IAAI;IACrB,wBAAwB,EAAE,IAAI;IAC9B,sBAAsB,EAAE,IAAI;CAC7B,CAAC;AAEF,IAAI,aAAiC,CAAC;AAEtC,KAAK,UAAU,WAAW;IACxB,IAAI,aAAa;QAAE,OAAO,aAAa,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,KAAK,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC;YACjF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAyB,CAAC;YACvD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC/B,OAAO,MAAM,CAAC,OAAO,CAAC;YACxB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,kCAAkC;QACpC,CAAC;IACH,CAAC;IACD,aAAa,GAAG,OAAO,CAAC;IACxB,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,MAAM;IAC1B,OAAO;QACL,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,MAAM,WAAW,EAAE;QAC5B,YAAY,EAAE;YACZ,IAAI,EAAE,IAAI;YACV,SAAS,EAAE,IAAI;YACf,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,IAAI;SACb;QACD,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE;KAC1B,CAAC;AACJ,CAAC"}
@@ -1,13 +1,17 @@
1
- import { buildCodebaseIndex, parseCodeFiles, assembleCodebaseIndex, assembleCodebaseIndexCooperative, DEFAULT_PARSE_CONCURRENCY } from './code/build.js';
1
+ import { buildCodebaseIndex, buildCodebaseIndexWithStats, parseCodeFiles, assembleCodebaseIndex, assembleCodebaseIndexCooperative, DEFAULT_PARSE_CONCURRENCY } from './code/build.js';
2
2
  import { createCodeQuerySession, createCodeQuerySessionFromIndex } from './code/session.js';
3
3
  import { openChunkCodeIndexStore, openCodeIndexStore } from './code/store.js';
4
4
  import { chunkCodebase, chunkFromIndex, chunkFromIndexCooperative, chunkFromIndexStreaming } from './code/chunk.js';
5
5
  import { discoverCodeFiles } from './code/discover.js';
6
6
  import { previewCodebaseSize } from './code/preview.js';
7
7
  import { buildCodebaseIndexIsolated, chunkFromStoreIsolated } from './code/isolated.js';
8
+ import { checkCodeSyntax } from './code/check.js';
8
9
  import { parseSlimIndex, slimifyIndex, slimifyIndexCooperative, tryParseSlimIndex, validateSlimIndex } from './code/slim.js';
9
10
  import { summarizeModule, toMermaid } from './code/query.js';
10
- import { buildRepoMap } from './code/map.js';
11
+ import { searchSymbols } from './code/search.js';
12
+ import { buildCodeContext } from './code/context.js';
13
+ import { buildChangedRepoMap, buildRepoMap } from './code/map.js';
14
+ import { readCodeSource } from './code/source.js';
11
15
  import { rankNodes, rankNodesCached } from './code/rank.js';
12
16
  import { computeCodeDiff } from './code/diff.js';
13
17
  import { getGitChangedFiles, getGitChurnSummary, getGitCommitHistory, getGitDiffFunctionContext, getGitDiffHunks, getGitDiffPatch, getGitDiffSummary, getGitFileHistory, resolveGitRange } from './git/api.js';
@@ -26,14 +30,16 @@ import { health } from './health.js';
26
30
  export type { CodebaseIndex, CodeNode, CodeEdge, CodeNodeType, CodeEdgeType, IndexTruncation, NormalizedSymbolKind, } from './code/types.js';
27
31
  export type { ManifestDiff, ManifestEntry, ChangedFileStat } from './code/incremental.js';
28
32
  export type { CodeQuerySession, CodeSessionChunkOptions } from './code/session.js';
29
- export type { CodeIndexStore, CodeIndexStoreOptions, StoreStrategy, StoreMetadata, StoreSessionOptions, StoreChunkIsolatedOptions, } from './code/store.js';
33
+ export type { CodeIndexStore, CodeIndexStoreOptions, StoreFreshness, StoreStrategy, StoreMetadata, StoreSessionOptions, StoreChunkIsolatedOptions, } from './code/store.js';
30
34
  export type { CodeChunk, CodeChunkOptions, CodeChunkStreamingOptions } from './code/chunk.js';
31
- export type { BuildCodebaseOptions, CodeIndexBudget, BudgetExceededBehavior, ParseCodeFilesOptions, ParseCodeFilesResult, AssembleCodebaseIndexInput, } from './code/build.js';
35
+ export type { BuildCodebaseOptions, BuildCodebaseResult, BuildFileStat, CodeIndexBudget, BudgetExceededBehavior, ParseCodeFilesOptions, ParseCodeFilesResult, AssembleCodebaseIndexInput, } from './code/build.js';
32
36
  export type { BuildCodebaseIndexIsolatedOptions, ChunkFromStoreIsolatedOptions, SerializableCodeChunkOptions, } from './code/isolated.js';
33
37
  export type { CodebaseIndexSlim, SlimParsedFile } from './code/slim.js';
34
38
  export type { CodebaseSizePreview, PreviewCodebaseSizeOptions } from './code/preview.js';
35
39
  export type { ModuleSummary, ModuleSummaryOptions, MermaidKind, MermaidOptions } from './code/query.js';
36
- export type { RepoMapOptions, RepoMapResult, RepoMapEntry, RepoMapSymbol, RepoMapFormat, RepoMapMode, RepoMapFocus, RepoMapFocusResult, } from './code/map.js';
40
+ export type { ChangedRepoMapOptions, ChangedRepoMapRange, RepoMapChangeContext, RepoMapOptions, RepoMapResult, RepoMapEntry, RepoMapSymbol, RepoMapFormat, RepoMapMode, RepoMapFocus, RepoMapFocusResult, } from './code/map.js';
41
+ export type { CodeSourceCandidate, ReadCodeSourceOptions, ReadCodeSourceQuery, ReadCodeSourceResult, } from './code/source.js';
42
+ export type { CheckCodeSyntaxOptions, CheckCodeSyntaxResult, CodeSyntaxDiagnostic } from './code/check.js';
37
43
  export type { RankOptions, RankResult, RankedNode, RankedFile, RankEdgeWeights } from './code/rank.js';
38
44
  export type { ChangedSymbol, CodeDiffOptions, CodeDiffResult, FileChange } from './code/diff.js';
39
45
  export type { GitChangedFile, GitChurnEntry, GitChurnSummary, GitCommit, GitCommitHistory, GitDiffHunk, GitDiffHunks, GitDiffPatch, GitDiffSummary, GitFileHistory, GitFileHistoryEntry, GitFileHunks, GitFileStatus, GitNumstat, GitRange, GitRangeKind, GitRepoInfo, } from './git/types.js';
@@ -42,6 +48,8 @@ export type { GitErrorCode, ResolveDiffRangeOptions, RunGitOptions, RunGitRawRes
42
48
  export type { DocumentChunk, DocumentChunkOptions, ChunkDocumentFromMarkdownOptions } from './doc/chunk.js';
43
49
  export type { OnProgress, ProgressEvent, ProgressPhase } from './progress-event.js';
44
50
  export type { CooperativeConfig, CooperativeOption, CooperativeYieldEvent, Yielder } from './utils.js';
51
+ export type { SearchSymbolsOptions, SymbolMatchField, SymbolSearchResult } from './code/search.js';
52
+ export type { CodeContext, CodeContextExport, CodeContextFile, CodeContextLocalImport, CodeContextSource, } from './code/context.js';
45
53
  export type { WorkspacePrepareOptions, WorkspacePreparedContext, WorkspacePreparationProgressEvent, OnPrepareProgress, } from './workspace/prepare-types.js';
46
54
  export type { AnalyzeWorkspaceOptions } from './workspace/analyze.js';
47
55
  export type { DescribeWorkspaceOptions } from './workspace/describe.js';
@@ -49,7 +57,8 @@ export type { InspectWorkspaceDocumentSetOptions } from './workspace/documents.j
49
57
  export type { WorkspaceBundle, WorkspaceBundleOptions, WorkspaceOutlineNode, WorkspaceCodeDocumentReference, WorkspaceCorpusChunk, } from './workspace/bundle.js';
50
58
  export type { WorkspaceDescription, WorkspaceRecommendedCall } from './workspace/types.js';
51
59
  export type { OccHealth } from './health.js';
52
- export { buildCodebaseIndex, buildCodebaseIndexIsolated, buildRepoMap, computeCodeDiff, rankNodes, rankNodesCached, parseCodeFiles, assembleCodebaseIndex, assembleCodebaseIndexCooperative, DEFAULT_PARSE_CONCURRENCY, chunkCodebase, chunkFromIndex, chunkFromIndexCooperative, chunkFromIndexStreaming, chunkFromStoreIsolated, createCodeQuerySession, createCodeQuerySessionFromIndex, discoverCodeFiles, openChunkCodeIndexStore, openChunkCodeIndexStore as openChunkStore, openCodeIndexStore, parseSlimIndex, previewCodebaseSize, slimifyIndex, slimifyIndexCooperative, summarizeModule, toMermaid, tryParseSlimIndex, validateSlimIndex, };
60
+ export { buildChangedRepoMap, buildCodebaseIndex, buildCodebaseIndexWithStats, buildCodebaseIndexIsolated, buildRepoMap, computeCodeDiff, readCodeSource, rankNodes, rankNodesCached, parseCodeFiles, assembleCodebaseIndex, assembleCodebaseIndexCooperative, DEFAULT_PARSE_CONCURRENCY, chunkCodebase, chunkFromIndex, chunkFromIndexCooperative, chunkFromIndexStreaming, chunkFromStoreIsolated, checkCodeSyntax, createCodeQuerySession, createCodeQuerySessionFromIndex, discoverCodeFiles, openChunkCodeIndexStore, openChunkCodeIndexStore as openChunkStore, openCodeIndexStore, parseSlimIndex, previewCodebaseSize, slimifyIndex, slimifyIndexCooperative, buildCodeContext, searchSymbols, summarizeModule, toMermaid, tryParseSlimIndex, validateSlimIndex, };
61
+ export { DEFAULT_EXCLUDE_DIRS } from './utils.js';
53
62
  export { CodeIndexBudgetExceededError } from './code/build.js';
54
63
  export { joinHunksToSymbols } from './code/diff.js';
55
64
  export { OccAbortError, OCC_ABORTED, isOccAbortError } from './errors.js';
@@ -77,8 +86,13 @@ export interface OccCodeNamespace {
77
86
  chunkFromIndexStreaming: typeof chunkFromIndexStreaming;
78
87
  chunkFromStoreIsolated: typeof chunkFromStoreIsolated;
79
88
  summarizeModule: typeof summarizeModule;
89
+ searchSymbols: typeof searchSymbols;
90
+ context: typeof buildCodeContext;
80
91
  toMermaid: typeof toMermaid;
92
+ source: typeof readCodeSource;
93
+ check: typeof checkCodeSyntax;
81
94
  map: typeof buildRepoMap;
95
+ mapChanged: typeof buildChangedRepoMap;
82
96
  diff: typeof computeCodeDiff;
83
97
  rank: typeof rankNodes;
84
98
  rankCached: typeof rankNodesCached;
package/dist/src/index.js CHANGED
@@ -1,13 +1,17 @@
1
- import { buildCodebaseIndex, parseCodeFiles, assembleCodebaseIndex, assembleCodebaseIndexCooperative, DEFAULT_PARSE_CONCURRENCY, } from './code/build.js';
1
+ import { buildCodebaseIndex, buildCodebaseIndexWithStats, parseCodeFiles, assembleCodebaseIndex, assembleCodebaseIndexCooperative, DEFAULT_PARSE_CONCURRENCY, } from './code/build.js';
2
2
  import { createCodeQuerySession, createCodeQuerySessionFromIndex } from './code/session.js';
3
3
  import { openChunkCodeIndexStore, openCodeIndexStore } from './code/store.js';
4
4
  import { chunkCodebase, chunkFromIndex, chunkFromIndexCooperative, chunkFromIndexStreaming } from './code/chunk.js';
5
5
  import { discoverCodeFiles } from './code/discover.js';
6
6
  import { previewCodebaseSize } from './code/preview.js';
7
7
  import { buildCodebaseIndexIsolated, chunkFromStoreIsolated } from './code/isolated.js';
8
+ import { checkCodeSyntax } from './code/check.js';
8
9
  import { parseSlimIndex, slimifyIndex, slimifyIndexCooperative, tryParseSlimIndex, validateSlimIndex, } from './code/slim.js';
9
10
  import { summarizeModule, toMermaid } from './code/query.js';
10
- import { buildRepoMap } from './code/map.js';
11
+ import { searchSymbols } from './code/search.js';
12
+ import { buildCodeContext } from './code/context.js';
13
+ import { buildChangedRepoMap, buildRepoMap } from './code/map.js';
14
+ import { readCodeSource } from './code/source.js';
11
15
  import { rankNodes, rankNodesCached } from './code/rank.js';
12
16
  import { computeCodeDiff } from './code/diff.js';
13
17
  import { getGitChangedFiles, getGitChurnSummary, getGitCommitHistory, getGitDiffFunctionContext, getGitDiffHunks, getGitDiffPatch, getGitDiffSummary, getGitFileHistory, resolveGitRange, } from './git/api.js';
@@ -23,7 +27,8 @@ import { inspectWorkspaceDocumentSet } from './workspace/documents.js';
23
27
  import { prepareWorkspaceContext } from './workspace/prepare.js';
24
28
  import { bundleWorkspace, bundleWorkspaceIsolated } from './workspace/bundle.js';
25
29
  import { health } from './health.js';
26
- export { buildCodebaseIndex, buildCodebaseIndexIsolated, buildRepoMap, computeCodeDiff, rankNodes, rankNodesCached, parseCodeFiles, assembleCodebaseIndex, assembleCodebaseIndexCooperative, DEFAULT_PARSE_CONCURRENCY, chunkCodebase, chunkFromIndex, chunkFromIndexCooperative, chunkFromIndexStreaming, chunkFromStoreIsolated, createCodeQuerySession, createCodeQuerySessionFromIndex, discoverCodeFiles, openChunkCodeIndexStore, openChunkCodeIndexStore as openChunkStore, openCodeIndexStore, parseSlimIndex, previewCodebaseSize, slimifyIndex, slimifyIndexCooperative, summarizeModule, toMermaid, tryParseSlimIndex, validateSlimIndex, };
30
+ export { buildChangedRepoMap, buildCodebaseIndex, buildCodebaseIndexWithStats, buildCodebaseIndexIsolated, buildRepoMap, computeCodeDiff, readCodeSource, rankNodes, rankNodesCached, parseCodeFiles, assembleCodebaseIndex, assembleCodebaseIndexCooperative, DEFAULT_PARSE_CONCURRENCY, chunkCodebase, chunkFromIndex, chunkFromIndexCooperative, chunkFromIndexStreaming, chunkFromStoreIsolated, checkCodeSyntax, createCodeQuerySession, createCodeQuerySessionFromIndex, discoverCodeFiles, openChunkCodeIndexStore, openChunkCodeIndexStore as openChunkStore, openCodeIndexStore, parseSlimIndex, previewCodebaseSize, slimifyIndex, slimifyIndexCooperative, buildCodeContext, searchSymbols, summarizeModule, toMermaid, tryParseSlimIndex, validateSlimIndex, };
31
+ export { DEFAULT_EXCLUDE_DIRS } from './utils.js';
27
32
  export { CodeIndexBudgetExceededError } from './code/build.js';
28
33
  export { joinHunksToSymbols } from './code/diff.js';
29
34
  export { OccAbortError, OCC_ABORTED, isOccAbortError } from './errors.js';
@@ -53,8 +58,13 @@ export function createOcc() {
53
58
  chunkFromIndexStreaming,
54
59
  chunkFromStoreIsolated,
55
60
  summarizeModule,
61
+ searchSymbols,
62
+ context: buildCodeContext,
56
63
  toMermaid,
64
+ source: readCodeSource,
65
+ check: checkCodeSyntax,
57
66
  map: buildRepoMap,
67
+ mapChanged: buildChangedRepoMap,
58
68
  diff: computeCodeDiff,
59
69
  rank: rankNodes,
60
70
  rankCached: rankNodesCached,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,2BAA2B,EAC3B,cAAc,EACd,qBAAqB,EACrB,gCAAgC,EAChC,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,sBAAsB,EAAE,+BAA+B,EAAE,MAAM,mBAAmB,CAAC;AAC5F,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AACpH,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EACL,cAAc,EACd,YAAY,EACZ,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,GAChB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AA+HrC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,2BAA2B,EAC3B,0BAA0B,EAC1B,YAAY,EACZ,eAAe,EACf,cAAc,EACd,SAAS,EACT,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,gCAAgC,EAChC,yBAAyB,EACzB,aAAa,EACb,cAAc,EACd,yBAAyB,EACzB,uBAAuB,EACvB,sBAAsB,EACtB,eAAe,EACf,sBAAsB,EACtB,+BAA+B,EAC/B,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,IAAI,cAAc,EACzC,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,SAAS,EACT,iBAAiB,EACjB,iBAAiB,GAClB,CAAC;AACF,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,EACL,QAAQ,EACR,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,MAAM,EACN,SAAS,GACV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,GAChB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAqFzD,MAAM,UAAU,SAAS;IACvB,OAAO;QACL,IAAI,EAAE;YACJ,UAAU,EAAE,kBAAkB;YAC9B,kBAAkB,EAAE,0BAA0B;YAC9C,aAAa,EAAE,sBAAsB;YACrC,sBAAsB,EAAE,+BAA+B;YACvD,SAAS,EAAE,kBAAkB;YAC7B,cAAc,EAAE,uBAAuB;YACvC,WAAW,EAAE,mBAAmB;YAChC,QAAQ,EAAE,iBAAiB;YAC3B,KAAK,EAAE,aAAa;YACpB,cAAc,EAAE,cAAc;YAC9B,yBAAyB;YACzB,uBAAuB;YACvB,sBAAsB;YACtB,eAAe;YACf,aAAa;YACb,OAAO,EAAE,gBAAgB;YACzB,SAAS;YACT,MAAM,EAAE,cAAc;YACtB,KAAK,EAAE,eAAe;YACtB,GAAG,EAAE,YAAY;YACjB,UAAU,EAAE,mBAAmB;YAC/B,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,eAAe;YAC3B,YAAY;YACZ,uBAAuB;YACvB,cAAc;YACd,iBAAiB;YACjB,iBAAiB;SAClB;QACD,GAAG,EAAE;YACH,YAAY,EAAE,eAAe;YAC7B,YAAY,EAAE,kBAAkB;YAChC,WAAW,EAAE,iBAAiB;YAC9B,SAAS,EAAE,eAAe;YAC1B,SAAS,EAAE,eAAe;YAC1B,mBAAmB,EAAE,yBAAyB;YAC9C,aAAa,EAAE,mBAAmB;YAClC,WAAW,EAAE,iBAAiB;YAC9B,YAAY,EAAE,kBAAkB;SACjC;QACD,SAAS,EAAE;YACT,OAAO,EAAE,gBAAgB;YACzB,QAAQ,EAAE,iBAAiB;YAC3B,gBAAgB,EAAE,2BAA2B;YAC7C,OAAO,EAAE,uBAAuB;YAChC,MAAM,EAAE,eAAe;YACvB,cAAc,EAAE,uBAAuB;SACxC;QACD,GAAG,EAAE;YACH,OAAO,EAAE,eAAe;YACxB,QAAQ,EAAE,iBAAiB;YAC3B,KAAK,EAAE,aAAa;YACpB,iBAAiB,EAAE,yBAAyB;SAC7C;QACD,KAAK,EAAE;YACL,OAAO,EAAE,eAAe;SACzB;QACD,KAAK,EAAE;YACL,OAAO,EAAE,mBAAmB;SAC7B;QACD,KAAK,EAAE;YACL,OAAO,EAAE,aAAa;SACvB;QACD,MAAM;KACP,CAAC;AACJ,CAAC"}
@@ -35,12 +35,14 @@ export function renderCell(cell) {
35
35
  export function isNonEmptyCell(cell) {
36
36
  if (cell.f)
37
37
  return true;
38
- if (cell.t === 'z')
39
- return false;
38
+ // Comment- or hyperlink-only cells are stub cells of type 'z', so these
39
+ // checks must precede the blank-type early return.
40
40
  if (cell.c?.length)
41
41
  return true;
42
42
  if (cell.l?.Target)
43
43
  return true;
44
+ if (cell.t === 'z')
45
+ return false;
44
46
  return renderCell(cell).length > 0;
45
47
  }
46
48
  //# sourceMappingURL=xlsx-cells.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"xlsx-cells.js","sourceRoot":"","sources":["../../../src/inspect/xlsx-cells.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,KAAK,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QAC1D,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC;IAC/D,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,iBAAiB,CAAC,GAAW,EAAE,GAAW;IACxD,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAgB,EAAE,GAAW,EAAE,GAAW;IAChE,OAAO,KAAK,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,CAA2B,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAA4B;IACrD,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,IAAI,OAAO,IAAI,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtE,IAAI,IAAI,CAAC,CAAC,YAAY,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACxD,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG;QAAE,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,QAAQ,CAAC;IACtD,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAChD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAgB;IAC7C,IAAI,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACxB,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IACjC,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IAChC,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"xlsx-cells.js","sourceRoot":"","sources":["../../../src/inspect/xlsx-cells.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,KAAK,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QAC1D,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC;IAC/D,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,iBAAiB,CAAC,GAAW,EAAE,GAAW;IACxD,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAgB,EAAE,GAAW,EAAE,GAAW;IAChE,OAAO,KAAK,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,CAA2B,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAA4B;IACrD,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,IAAI,OAAO,IAAI,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtE,IAAI,IAAI,CAAC,CAAC,YAAY,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACxD,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG;QAAE,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,QAAQ,CAAC;IACtD,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAChD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAgB;IAC7C,IAAI,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACxB,wEAAwE;IACxE,mDAAmD;IACnD,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IACjC,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AACrC,CAAC"}
@@ -1,2 +1,11 @@
1
1
  /** Convert a document to markdown. Returns null for unsupported formats (ods). */
2
2
  export declare function documentToMarkdown(filePath: string): Promise<string | null>;
3
+ export type MarkdownConverter = typeof documentToMarkdown;
4
+ /**
5
+ * A `documentToMarkdown` that coalesces conversions of the same file:
6
+ * concurrent and repeated calls for one path share a single conversion
7
+ * (including its failure, so a broken document is not re-parsed per caller).
8
+ * Scope one converter per operation (e.g. one workspace bundle) — it holds
9
+ * every converted document's markdown for its lifetime.
10
+ */
11
+ export declare function createSharedMarkdownConverter(): MarkdownConverter;
@@ -1,4 +1,5 @@
1
1
  import { readFile } from 'node:fs/promises';
2
+ import path from 'node:path';
2
3
  import JSZip from 'jszip';
3
4
  import { z } from 'zod';
4
5
  import { extractOfficeText, getExtension, PDF_LOG_SUPPRESSED_PREFIXES, suppressConsoleLogWhile, wrapDependencyLoadError, } from '../utils.js';
@@ -187,7 +188,9 @@ async function xlsxToMarkdown(filePath, maxRows = 20) {
187
188
  export async function documentToMarkdown(filePath) {
188
189
  const ext = getExtension(filePath);
189
190
  if (RAW_TEXT_EXTENSIONS.has(ext)) {
190
- return readFile(filePath, 'utf8');
191
+ // Strip a leading UTF-8 BOM so header/heading detection anchors on the
192
+ // first real character (Node's utf8 decode keeps U+FEFF).
193
+ return (await readFile(filePath, 'utf8')).replace(/^\uFEFF/, '');
191
194
  }
192
195
  switch (ext) {
193
196
  case 'docx':
@@ -208,4 +211,23 @@ export async function documentToMarkdown(filePath) {
208
211
  return null;
209
212
  }
210
213
  }
214
+ /**
215
+ * A `documentToMarkdown` that coalesces conversions of the same file:
216
+ * concurrent and repeated calls for one path share a single conversion
217
+ * (including its failure, so a broken document is not re-parsed per caller).
218
+ * Scope one converter per operation (e.g. one workspace bundle) — it holds
219
+ * every converted document's markdown for its lifetime.
220
+ */
221
+ export function createSharedMarkdownConverter() {
222
+ const conversions = new Map();
223
+ return filePath => {
224
+ const key = path.resolve(filePath);
225
+ const cached = conversions.get(key);
226
+ if (cached)
227
+ return cached;
228
+ const conversion = documentToMarkdown(filePath);
229
+ conversions.set(key, conversion);
230
+ return conversion;
231
+ };
232
+ }
211
233
  //# sourceMappingURL=convert.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"convert.js","sourceRoot":"","sources":["../../../src/markdown/convert.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convert.js","sourceRoot":"","sources":["../../../src/markdown/convert.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,9 @@ export async function parseOdf(filePath) {
15
15
  async function parseOdt(filePath) {
16
16
  const text = await extractOfficeText(filePath);
17
17
  const words = countWords(text);
18
- const paragraphs = text.split(/\n\n+/).filter((s) => s.trim().length > 0).length;
18
+ // officeparser separates blocks with single newlines, so paragraph count is
19
+ // an approximation of the text runs rather than an exact structural count.
20
+ const paragraphs = text.split(/\n+/).filter((s) => s.trim().length > 0).length;
19
21
  const pages = Math.max(1, Math.ceil(words / 250));
20
22
  return {
21
23
  fileType: 'ODT',
@@ -23,7 +25,7 @@ async function parseOdt(filePath) {
23
25
  confidence: {
24
26
  words: 'exact',
25
27
  pages: 'estimated',
26
- paragraphs: 'exact',
28
+ paragraphs: 'estimated',
27
29
  },
28
30
  };
29
31
  }