@coreyuan/vector-mind 1.0.54 → 1.1.1

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 (117) hide show
  1. package/README.md +107 -72
  2. package/admin-panel/README.md +77 -0
  3. package/admin-panel/dist/client/assets/index-Bzyjdhh2.css +1 -0
  4. package/admin-panel/dist/client/assets/index-Ph73ewzt.js +9 -0
  5. package/admin-panel/dist/client/index.html +14 -0
  6. package/admin-panel/package.json +25 -0
  7. package/admin-panel/server/index.mjs +1424 -0
  8. package/admin-panel/server/security.mjs +117 -0
  9. package/admin-panel/server/security.test.mjs +113 -0
  10. package/admin-panel/server/storage.mjs +49 -0
  11. package/admin-panel/server/storage.test.mjs +36 -0
  12. package/dist/builtin-conventions.js +6 -1
  13. package/dist/builtin-conventions.js.map +1 -1
  14. package/dist/builtin-instructions.d.ts +1 -1
  15. package/dist/builtin-instructions.js +1 -1
  16. package/dist/builtin-instructions.js.map +1 -1
  17. package/dist/checkpoint-snapshot.d.ts +56 -0
  18. package/dist/checkpoint-snapshot.js +411 -0
  19. package/dist/checkpoint-snapshot.js.map +1 -0
  20. package/dist/config.d.ts +1 -1
  21. package/dist/config.js +1 -1
  22. package/dist/config.js.map +1 -1
  23. package/dist/context-governance.d.ts +56 -0
  24. package/dist/context-governance.js +176 -0
  25. package/dist/context-governance.js.map +1 -0
  26. package/dist/database-runtime.d.ts +3 -1
  27. package/dist/database-runtime.js +232 -127
  28. package/dist/database-runtime.js.map +1 -1
  29. package/dist/development-warnings.d.ts +2 -1
  30. package/dist/development-warnings.js +90 -20
  31. package/dist/development-warnings.js.map +1 -1
  32. package/dist/file-indexing.d.ts +2 -1
  33. package/dist/file-indexing.js +127 -47
  34. package/dist/file-indexing.js.map +1 -1
  35. package/dist/grep.js +4 -0
  36. package/dist/grep.js.map +1 -1
  37. package/dist/index.js +5 -2
  38. package/dist/index.js.map +1 -1
  39. package/dist/large-file-split.d.ts +52 -8
  40. package/dist/large-file-split.js +290 -76
  41. package/dist/large-file-split.js.map +1 -1
  42. package/dist/memory-maintenance/compaction.js +3 -2
  43. package/dist/memory-maintenance/compaction.js.map +1 -1
  44. package/dist/memory-maintenance/metrics.d.ts +1 -1
  45. package/dist/memory-maintenance/metrics.js +11 -3
  46. package/dist/memory-maintenance/metrics.js.map +1 -1
  47. package/dist/memory-maintenance/purge.js +1 -1
  48. package/dist/memory-maintenance/purge.js.map +1 -1
  49. package/dist/memory-maintenance/runner.d.ts +1 -0
  50. package/dist/memory-maintenance/runner.js +15 -3
  51. package/dist/memory-maintenance/runner.js.map +1 -1
  52. package/dist/memory-maintenance/types.d.ts +1 -0
  53. package/dist/memory-mutations.d.ts +3 -3
  54. package/dist/memory-mutations.js +109 -43
  55. package/dist/memory-mutations.js.map +1 -1
  56. package/dist/memory-recall.js +16 -1
  57. package/dist/memory-recall.js.map +1 -1
  58. package/dist/operation-scope.js +42 -12
  59. package/dist/operation-scope.js.map +1 -1
  60. package/dist/path-containment.d.ts +5 -0
  61. package/dist/path-containment.js +64 -0
  62. package/dist/path-containment.js.map +1 -0
  63. package/dist/path-filters.d.ts +1 -1
  64. package/dist/path-filters.js +7 -6
  65. package/dist/path-filters.js.map +1 -1
  66. package/dist/pending-changes.d.ts +5 -0
  67. package/dist/pending-changes.js +26 -16
  68. package/dist/pending-changes.js.map +1 -1
  69. package/dist/project-files.d.ts +1 -0
  70. package/dist/project-files.js +19 -10
  71. package/dist/project-files.js.map +1 -1
  72. package/dist/root.d.ts +4 -1
  73. package/dist/root.js +34 -4
  74. package/dist/root.js.map +1 -1
  75. package/dist/rtk-integrity.d.ts +5 -0
  76. package/dist/rtk-integrity.js +35 -0
  77. package/dist/rtk-integrity.js.map +1 -0
  78. package/dist/rtk-shim.js +22 -9
  79. package/dist/rtk-shim.js.map +1 -1
  80. package/dist/rtk-tools.d.ts +8 -0
  81. package/dist/rtk-tools.js +59 -42
  82. package/dist/rtk-tools.js.map +1 -1
  83. package/dist/server-instructions.js +9 -88
  84. package/dist/server-instructions.js.map +1 -1
  85. package/dist/tool-catalog.d.ts +2 -0
  86. package/dist/tool-catalog.js +76 -23
  87. package/dist/tool-catalog.js.map +1 -1
  88. package/dist/tool-handlers/context-recovery.js +79 -54
  89. package/dist/tool-handlers/context-recovery.js.map +1 -1
  90. package/dist/tool-handlers/large-files.js +600 -44
  91. package/dist/tool-handlers/large-files.js.map +1 -1
  92. package/dist/tool-handlers/memory-diagnostics.js +240 -45
  93. package/dist/tool-handlers/memory-diagnostics.js.map +1 -1
  94. package/dist/tool-handlers/memory.js +167 -22
  95. package/dist/tool-handlers/memory.js.map +1 -1
  96. package/dist/tool-handlers/operations.js +28 -8
  97. package/dist/tool-handlers/operations.js.map +1 -1
  98. package/dist/tool-handlers/requirement-status.d.ts +5 -0
  99. package/dist/tool-handlers/requirement-status.js +267 -0
  100. package/dist/tool-handlers/requirement-status.js.map +1 -0
  101. package/dist/tool-handlers/requirements.js +786 -97
  102. package/dist/tool-handlers/requirements.js.map +1 -1
  103. package/dist/tool-handlers.d.ts +4 -0
  104. package/dist/tool-handlers.js +183 -10
  105. package/dist/tool-handlers.js.map +1 -1
  106. package/dist/tool-output.d.ts +32 -1
  107. package/dist/tool-output.js +31 -12
  108. package/dist/tool-output.js.map +1 -1
  109. package/dist/tool-schemas.d.ts +235 -0
  110. package/dist/tool-schemas.js +98 -26
  111. package/dist/tool-schemas.js.map +1 -1
  112. package/dist/types.d.ts +1 -0
  113. package/docs/capability-matrix.md +24 -17
  114. package/package.json +19 -6
  115. package/skills/vector-mind-autopilot/SKILL.md +82 -23
  116. package/skills/vector-mind-autopilot/references/claude-project-instructions.md +14 -11
  117. package/skills/vector-mind-autopilot/references/universal-system-prompt.md +24 -16
@@ -1,6 +1,7 @@
1
1
  import fs from "node:fs";
2
2
  import path from "node:path";
3
3
  import { DEVELOPMENT_BLOCK_FILE_LINES, DEVELOPMENT_HUGE_FILE_LINES, DEVELOPMENT_WARN_FILE_BYTES, DEVELOPMENT_WARN_FILE_LINES, DEVELOPMENT_WARN_PENDING_FILES, } from "./config.js";
4
+ import { looksLikeGeneratedFile, shouldIgnoreDbFilePath } from "./path-rules.js";
4
5
  let devWarningContext = null;
5
6
  export function configureDevelopmentWarnings(context) {
6
7
  devWarningContext = context;
@@ -69,6 +70,68 @@ export function countFileLinesBounded(absPath, maxBytes) {
69
70
  fs.closeSync(fd);
70
71
  }
71
72
  }
73
+ function countFileLinesToThreshold(absPath, stopAtLines, maxBytes = 32_000_000) {
74
+ let stat;
75
+ try {
76
+ stat = fs.statSync(absPath);
77
+ }
78
+ catch {
79
+ return null;
80
+ }
81
+ if (!stat.isFile())
82
+ return null;
83
+ const fd = fs.openSync(absPath, "r");
84
+ const buffer = Buffer.alloc(64 * 1024);
85
+ let lines = stat.size > 0 ? 1 : 0;
86
+ let offset = 0;
87
+ try {
88
+ while (offset < stat.size && offset < maxBytes && lines < stopAtLines) {
89
+ const bytesRead = fs.readSync(fd, buffer, 0, Math.min(buffer.length, stat.size - offset), offset);
90
+ if (bytesRead <= 0)
91
+ break;
92
+ for (let index = 0; index < bytesRead; index += 1) {
93
+ if (buffer[index] === 10)
94
+ lines += 1;
95
+ }
96
+ offset += bytesRead;
97
+ }
98
+ }
99
+ finally {
100
+ fs.closeSync(fd);
101
+ }
102
+ return { lines, truncated: offset < stat.size };
103
+ }
104
+ function generatedSourceWarning(filePath, absPath) {
105
+ if (shouldIgnoreDbFilePath(filePath)) {
106
+ return {
107
+ code: "generated_source_not_editable",
108
+ severity: "blocker",
109
+ message: "This path is generated, vendored, dependency, cache, or build output. Regenerate it or change the source-of-truth file instead of editing or modularizing it.",
110
+ files: [filePath],
111
+ };
112
+ }
113
+ try {
114
+ const fd = fs.openSync(absPath, "r");
115
+ try {
116
+ const buffer = Buffer.alloc(16_384);
117
+ const bytesRead = fs.readSync(fd, buffer, 0, buffer.length, 0);
118
+ if (!looksLikeGeneratedFile(buffer.subarray(0, bytesRead).toString("utf8")))
119
+ return null;
120
+ }
121
+ finally {
122
+ fs.closeSync(fd);
123
+ }
124
+ }
125
+ catch {
126
+ return null;
127
+ }
128
+ return {
129
+ code: "generated_source_not_editable",
130
+ severity: "blocker",
131
+ message: "This source file declares that it is generated. Change its generator or source-of-truth instead of editing or mechanically splitting the generated output.",
132
+ files: [filePath],
133
+ };
134
+ }
72
135
  function isPathInsideProjectRoot(absPath) {
73
136
  const root = path.resolve(getProjectRoot());
74
137
  const rel = path.relative(root, path.resolve(absPath));
@@ -107,7 +170,7 @@ function buildLargeImplementationFileWarning(args) {
107
170
  if (args.lineCount >= DEVELOPMENT_HUGE_FILE_LINES) {
108
171
  return {
109
172
  code: "huge_file_modularization_required",
110
- severity: "blocker",
173
+ severity: "warning",
111
174
  message: "This implementation file is huge. Before any normal feature work, perform mechanical modularization: move whole functions/types/impl blocks into real, clearly named modules/directories, avoid *.generated.* or *.parts files, preserve behavior, then run format/build/tests.",
112
175
  files: [args.filePath],
113
176
  details: {
@@ -158,6 +221,9 @@ export function buildFileReadDevelopmentWarnings(filePath, absPath, stat) {
158
221
  }
159
222
  if (!isLikelySourceImplementationFile(filePath))
160
223
  return warnings;
224
+ const generatedWarning = generatedSourceWarning(filePath, absPath);
225
+ if (generatedWarning)
226
+ return [generatedWarning];
161
227
  let st = stat;
162
228
  try {
163
229
  st ??= fs.statSync(absPath);
@@ -167,7 +233,7 @@ export function buildFileReadDevelopmentWarnings(filePath, absPath, stat) {
167
233
  }
168
234
  if (!st.isFile())
169
235
  return warnings;
170
- const lineInfo = countFileLinesBounded(absPath, 2_000_000);
236
+ const lineInfo = countFileLinesToThreshold(absPath, DEVELOPMENT_HUGE_FILE_LINES);
171
237
  const lineCount = lineInfo?.lines ?? 0;
172
238
  const tooManyLines = lineCount >= DEVELOPMENT_BLOCK_FILE_LINES;
173
239
  const warnLines = lineCount >= DEVELOPMENT_WARN_FILE_LINES;
@@ -290,7 +356,7 @@ export function buildRequirementMappingWarnings(args) {
290
356
  if (items.length && args.files.length > 0 && planned.length === 0) {
291
357
  warnings.push({
292
358
  code: "requirement_mapping_missing",
293
- severity: "blocker",
359
+ severity: "warning",
294
360
  message: "This requirement has explicit requirement_items, but the planned file changes were not mapped to those items. Add planned_changes with requirement_refs, or mark purely mechanical/test/build/formatting work as supporting_change.",
295
361
  files: args.files.map((f) => normalizeToDbPath(f.file_path)).slice(0, 12),
296
362
  details: {
@@ -429,13 +495,16 @@ export function mergeScopeContracts(base, extra) {
429
495
  inferred_from: Array.from(new Set([...(base?.inferred_from ?? []), ...(extra?.inferred_from ?? [])])),
430
496
  };
431
497
  }
432
- export function buildScopeDriftWarnings(args) {
433
- const requirementContract = args.requirement ? getRequirementScopeContract(args.requirement.id) : null;
434
- const contract = mergeScopeContracts(requirementContract, args.contract);
435
- const hasScopeRules = !!contract && (contract.allow_terms.length > 0 ||
498
+ export function scopeContractHasRules(contract) {
499
+ return !!contract && (contract.allow_terms.length > 0 ||
436
500
  contract.deny_terms.length > 0 ||
437
501
  contract.allowed_paths.length > 0 ||
438
502
  contract.denied_paths.length > 0);
503
+ }
504
+ export function buildScopeDriftWarnings(args) {
505
+ const requirementContract = args.requirement ? getRequirementScopeContract(args.requirement.id) : null;
506
+ const contract = mergeScopeContracts(requirementContract, args.contract);
507
+ const hasScopeRules = scopeContractHasRules(contract);
439
508
  const warnings = [];
440
509
  if (!contract || !hasScopeRules) {
441
510
  if (args.includeMissingContractHint && args.files.length > 0) {
@@ -539,6 +608,11 @@ export function buildDevelopmentWarnings(files, opts = {}) {
539
608
  if (!isLikelySourceImplementationFile(relPath))
540
609
  continue;
541
610
  const absPath = path.isAbsolute(relPath) ? relPath : path.join(getProjectRoot(), relPath);
611
+ const generatedWarning = generatedSourceWarning(relPath, absPath);
612
+ if (generatedWarning) {
613
+ warnings.push(generatedWarning);
614
+ continue;
615
+ }
542
616
  let stat;
543
617
  try {
544
618
  stat = fs.statSync(absPath);
@@ -548,7 +622,7 @@ export function buildDevelopmentWarnings(files, opts = {}) {
548
622
  }
549
623
  if (!stat.isFile())
550
624
  continue;
551
- const lineInfo = countFileLinesBounded(absPath, 2_000_000);
625
+ const lineInfo = countFileLinesToThreshold(absPath, DEVELOPMENT_HUGE_FILE_LINES);
552
626
  const lineCount = lineInfo?.lines ?? 0;
553
627
  const tooManyLines = lineCount >= DEVELOPMENT_BLOCK_FILE_LINES;
554
628
  const warnLines = lineCount >= DEVELOPMENT_WARN_FILE_LINES;
@@ -572,18 +646,14 @@ function isLargeFileWarningCode(code) {
572
646
  code === "huge_file_modularization_required");
573
647
  }
574
648
  export function isDevelopmentWarningBlockingForChangeMode(warning, changeMode) {
575
- if (changeMode === "mechanical_modularization") {
576
- if (isLargeFileWarningCode(warning.code))
577
- return false;
578
- if (warning.code === "scope_contract_missing")
579
- return false;
580
- }
581
- if (changeMode === "emergency_hotfix") {
582
- if (isLargeFileWarningCode(warning.code))
583
- return false;
584
- if (warning.code === "scope_contract_missing")
585
- return false;
649
+ if (warning.code === "huge_file_modularization_required") {
650
+ return changeMode !== "mechanical_modularization" && changeMode !== "emergency_hotfix";
586
651
  }
587
- return warning.severity === "blocker" || warning.severity === "warning";
652
+ if (isLargeFileWarningCode(warning.code))
653
+ return false;
654
+ if (warning.code === "generated_source_not_editable")
655
+ return true;
656
+ return warning.severity === "blocker" &&
657
+ (warning.code === "scope_drift" || warning.code === "cross_project_path");
588
658
  }
589
659
  //# sourceMappingURL=development-warnings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"development-warnings.js","sourceRoot":"","sources":["../src/development-warnings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"development-warnings.js","sourceRoot":"","sources":["../src/development-warnings.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import Database from "better-sqlite3";
2
- import type { ExtractedSymbol } from "./types.js";
2
+ import type { ExtractedSymbol, PendingChangeRow } from "./types.js";
3
3
  type FileIndexingContext = {
4
4
  getDb: () => Database.Database | undefined;
5
5
  getProjectRoot: () => string;
@@ -14,6 +14,7 @@ type FileIndexingContext = {
14
14
  };
15
15
  export declare function configureFileIndexing(context: FileIndexingContext): void;
16
16
  type PendingChangeEvent = "add" | "change" | "unlink";
17
+ export declare function peekPendingChangeBuffer(): PendingChangeRow[];
17
18
  export declare function flushPendingChangeBuffer(): void;
18
19
  export declare function recordPendingChange(absPath: string, event: PendingChangeEvent): void;
19
20
  export declare function indexFile(absPath: string, reason: IndexReason): void;
@@ -5,10 +5,28 @@ import { getContentChunkKind, isContentIndexableFile, isSymbolIndexableFile, loo
5
5
  import { extractSymbols } from "./symbols.js";
6
6
  import { logActivity } from "./activity-log.js";
7
7
  import { safeJson } from "./tool-output.js";
8
+ import { resolvePathWithinRoot } from "./path-containment.js";
8
9
  let fileIndexingContext = null;
9
10
  const pendingChangeBuffer = new Map();
10
11
  let pendingChangeFlushTimer = null;
11
12
  let pendingEventsSincePrune = 0;
13
+ function projectRootKey(rootPath) {
14
+ const resolved = path.resolve(rootPath);
15
+ return process.platform === "win32" ? resolved.toLowerCase() : resolved;
16
+ }
17
+ function bufferedChangeKey(rootKey, filePath) {
18
+ const normalizedFile = process.platform === "win32" ? filePath.toLowerCase() : filePath;
19
+ return `${rootKey}\n${normalizedFile}`;
20
+ }
21
+ function isContainedIndexingPath(absPath, allowMissing = false) {
22
+ try {
23
+ resolvePathWithinRoot(getProjectRoot(), absPath, { allowMissing });
24
+ return true;
25
+ }
26
+ catch {
27
+ return false;
28
+ }
29
+ }
12
30
  export function configureFileIndexing(context) {
13
31
  fileIndexingContext = context;
14
32
  }
@@ -81,7 +99,7 @@ function chunkTextByLines(content, opts) {
81
99
  }
82
100
  return chunks;
83
101
  }
84
- function indexFileContentChunks(dbFilePath, absPath, content) {
102
+ function replaceFileContentChunks(dbFilePath, absPath, content) {
85
103
  const kind = getContentChunkKind(absPath);
86
104
  if (!kind)
87
105
  return 0;
@@ -91,47 +109,83 @@ function indexFileContentChunks(dbFilePath, absPath, content) {
91
109
  const chunks = chunkTextByLines(content, opts);
92
110
  const ext = path.extname(absPath).toLowerCase();
93
111
  const metadata = safeJson({ ext });
94
- const tx = getDb().transaction(() => {
95
- getDeleteFileChunkItemsStatement().run(dbFilePath);
96
- for (const chunk of chunks) {
97
- const title = `${dbFilePath}#L${chunk.startLine}-L${chunk.endLine}`;
98
- const contentHash = sha256Hex(chunk.content);
99
- getInsertMemoryItemStatement().run(kind, title, chunk.content, dbFilePath, chunk.startLine, chunk.endLine, null, metadata, contentHash);
100
- }
101
- });
112
+ getDeleteFileChunkItemsStatement().run(dbFilePath);
113
+ for (const chunk of chunks) {
114
+ const title = `${dbFilePath}#L${chunk.startLine}-L${chunk.endLine}`;
115
+ const contentHash = sha256Hex(chunk.content);
116
+ getInsertMemoryItemStatement().run(kind, title, chunk.content, dbFilePath, chunk.startLine, chunk.endLine, null, metadata, contentHash);
117
+ }
118
+ return chunks.length;
119
+ }
120
+ function invalidateFileIndexes(filePath, reason) {
102
121
  try {
103
- tx();
122
+ getDb().transaction(() => {
123
+ getDeleteSymbolsForFileStatement().run(filePath);
124
+ getDeleteFileChunkItemsStatement().run(filePath);
125
+ })();
126
+ logActivity("index_invalidate", { file_path: filePath, reason });
104
127
  }
105
128
  catch (err) {
106
- console.error("[vectormind] failed to index file chunks:", dbFilePath, err);
129
+ console.error("[vectormind] failed to invalidate file indexes:", filePath, err);
107
130
  }
108
- return chunks.length;
131
+ }
132
+ export function peekPendingChangeBuffer() {
133
+ const currentRootKey = projectRootKey(getProjectRoot());
134
+ return Array.from(pendingChangeBuffer.values())
135
+ .filter((entry) => entry.projectRootKey === currentRootKey)
136
+ .map((entry) => ({
137
+ file_path: entry.filePath,
138
+ last_event: entry.event,
139
+ updated_at: entry.updatedAt,
140
+ source: "watcher",
141
+ }));
109
142
  }
110
143
  export function flushPendingChangeBuffer() {
111
- if (!hasDb())
112
- return;
113
144
  if (pendingChangeFlushTimer) {
114
145
  clearTimeout(pendingChangeFlushTimer);
115
146
  pendingChangeFlushTimer = null;
116
147
  }
148
+ if (!hasDb()) {
149
+ if (pendingChangeBuffer.size) {
150
+ pendingChangeFlushTimer = setTimeout(flushPendingChangeBuffer, Math.max(1_000, PENDING_FLUSH_MS));
151
+ }
152
+ return;
153
+ }
117
154
  if (!pendingChangeBuffer.size)
118
155
  return;
119
- const entries = Array.from(pendingChangeBuffer.entries());
120
- pendingChangeBuffer.clear();
156
+ const currentRootKey = projectRootKey(getProjectRoot());
157
+ const entries = Array.from(pendingChangeBuffer.entries())
158
+ .filter(([, entry]) => entry.projectRootKey === currentRootKey);
159
+ if (!entries.length)
160
+ return;
121
161
  try {
122
162
  const tx = getDb().transaction(() => {
123
- for (const [filePath, event] of entries) {
124
- getUpsertPendingChangeStatement().run(filePath, event);
163
+ for (const [, entry] of entries) {
164
+ getUpsertPendingChangeStatement().run(entry.filePath, entry.event);
125
165
  }
126
166
  });
127
167
  tx();
168
+ for (const [key, entry] of entries) {
169
+ const current = pendingChangeBuffer.get(key);
170
+ if (current?.event === entry.event && current.projectRootKey === entry.projectRootKey) {
171
+ pendingChangeBuffer.delete(key);
172
+ }
173
+ }
128
174
  }
129
175
  catch (err) {
130
176
  console.error("[vectormind] failed to flush pending change buffer:", err);
177
+ logActivity("pending_flush_failed", { entries: entries.length, error: String(err) });
178
+ if (!pendingChangeFlushTimer) {
179
+ pendingChangeFlushTimer = setTimeout(flushPendingChangeBuffer, Math.max(1_000, PENDING_FLUSH_MS));
180
+ }
181
+ return;
131
182
  }
132
183
  logActivity("pending_flush", {
133
184
  entries: entries.length,
134
- sample: entries.slice(0, 10).map(([file_path, last_event]) => ({ file_path, last_event })),
185
+ sample: entries.slice(0, 10).map(([, entry]) => ({
186
+ file_path: entry.filePath,
187
+ last_event: entry.event,
188
+ })),
135
189
  });
136
190
  pendingEventsSincePrune += entries.length;
137
191
  if (pendingEventsSincePrune >= PENDING_PRUNE_EVERY) {
@@ -142,11 +196,19 @@ export function flushPendingChangeBuffer() {
142
196
  export function recordPendingChange(absPath, event) {
143
197
  if (shouldIgnorePath(absPath, getProjectRoot()))
144
198
  return;
199
+ if (!isContainedIndexingPath(absPath, event === "unlink"))
200
+ return;
145
201
  const track = isSymbolIndexableFile(absPath) || isContentIndexableFile(absPath);
146
202
  if (!track)
147
203
  return;
148
204
  const filePath = normalizeToDbPath(absPath);
149
- pendingChangeBuffer.set(filePath, event);
205
+ const rootKey = projectRootKey(getProjectRoot());
206
+ pendingChangeBuffer.set(bufferedChangeKey(rootKey, filePath), {
207
+ projectRootKey: rootKey,
208
+ filePath,
209
+ event,
210
+ updatedAt: new Date().toISOString(),
211
+ });
150
212
  if (pendingChangeFlushTimer)
151
213
  return;
152
214
  if (PENDING_FLUSH_MS === 0) {
@@ -158,25 +220,37 @@ export function recordPendingChange(absPath, event) {
158
220
  export function indexFile(absPath, reason) {
159
221
  if (shouldIgnorePath(absPath, getProjectRoot()))
160
222
  return;
223
+ if (!isContainedIndexingPath(absPath))
224
+ return;
225
+ const filePath = normalizeToDbPath(absPath);
161
226
  const indexSymbols = isSymbolIndexableFile(absPath);
162
227
  const indexContent = isContentIndexableFile(absPath);
163
- if (!indexSymbols && !indexContent)
228
+ if (!indexSymbols && !indexContent) {
229
+ invalidateFileIndexes(filePath, "not_indexable");
164
230
  return;
231
+ }
165
232
  const kind = getContentChunkKind(absPath);
166
- if (!kind)
233
+ if (!kind) {
234
+ invalidateFileIndexes(filePath, "unsupported_content_kind");
167
235
  return;
236
+ }
168
237
  let stat;
169
238
  try {
170
239
  stat = fs.statSync(absPath);
171
240
  }
172
241
  catch {
242
+ invalidateFileIndexes(filePath, "missing_file");
173
243
  return;
174
244
  }
175
- if (!stat.isFile())
245
+ if (!stat.isFile()) {
246
+ invalidateFileIndexes(filePath, "not_a_file");
176
247
  return;
248
+ }
177
249
  const maxBytes = kind === "code_chunk" ? INDEX_MAX_CODE_BYTES : INDEX_MAX_DOC_BYTES;
178
- if (maxBytes > 0 && stat.size > maxBytes)
250
+ if (maxBytes > 0 && stat.size > maxBytes) {
251
+ invalidateFileIndexes(filePath, "size_limit");
179
252
  return;
253
+ }
180
254
  let content;
181
255
  try {
182
256
  content = fs.readFileSync(absPath, "utf8");
@@ -184,40 +258,46 @@ export function indexFile(absPath, reason) {
184
258
  catch {
185
259
  return;
186
260
  }
187
- if (content.includes("\u0000"))
261
+ if (content.includes("\u0000")) {
262
+ invalidateFileIndexes(filePath, "binary_content");
188
263
  return;
264
+ }
189
265
  const ext = path.extname(absPath).toLowerCase();
190
- const filePath = normalizeToDbPath(absPath);
191
266
  if (INDEX_SKIP_MINIFIED &&
192
267
  kind === "code_chunk" &&
193
268
  (ext === ".js" || ext === ".mjs" || ext === ".cjs" || ext === ".css") &&
194
269
  looksLikeMinifiedBundle(content)) {
270
+ invalidateFileIndexes(filePath, "minified_bundle");
195
271
  logActivity("index_skip", { file_path: filePath, reason: "minified_bundle", bytes: stat.size });
196
272
  return;
197
273
  }
198
274
  if (kind === "code_chunk" && stat.size >= 20_000 && looksLikeGeneratedFile(content)) {
275
+ invalidateFileIndexes(filePath, "generated_file");
199
276
  logActivity("index_skip", { file_path: filePath, reason: "generated_file", bytes: stat.size });
200
277
  return;
201
278
  }
202
- let symbolCount = 0;
279
+ const symbols = indexSymbols ? extractSymbols(absPath, content) : [];
203
280
  let chunkCount = 0;
204
- if (indexSymbols) {
205
- const symbols = extractSymbols(absPath, content);
206
- symbolCount = symbols.length;
207
- try {
208
- getIndexFileSymbolsTx()?.(filePath, symbols);
209
- }
210
- catch (err) {
211
- console.error("[vectormind] failed to index symbols:", filePath, err);
212
- }
281
+ try {
282
+ getDb().transaction(() => {
283
+ if (indexSymbols)
284
+ getIndexFileSymbolsTx()?.(filePath, symbols);
285
+ else
286
+ getDeleteSymbolsForFileStatement().run(filePath);
287
+ if (indexContent)
288
+ chunkCount = replaceFileContentChunks(filePath, absPath, content);
289
+ else
290
+ getDeleteFileChunkItemsStatement().run(filePath);
291
+ })();
213
292
  }
214
- if (indexContent) {
215
- chunkCount = indexFileContentChunks(filePath, absPath, content);
293
+ catch (err) {
294
+ console.error("[vectormind] failed to index file atomically:", filePath, err);
295
+ return;
216
296
  }
217
297
  logActivity("index_file", {
218
298
  file_path: filePath,
219
299
  reason,
220
- symbols: symbolCount,
300
+ symbols: symbols.length,
221
301
  chunks: chunkCount,
222
302
  bytes: stat.size,
223
303
  });
@@ -225,18 +305,18 @@ export function indexFile(absPath, reason) {
225
305
  export function removeFileIndexes(absPath) {
226
306
  if (shouldIgnorePath(absPath, getProjectRoot()))
227
307
  return;
308
+ if (!isContainedIndexingPath(absPath, true))
309
+ return;
228
310
  const filePath = normalizeToDbPath(absPath);
229
311
  try {
230
- getDeleteSymbolsForFileStatement().run(filePath);
312
+ getDb().transaction(() => {
313
+ getDeleteSymbolsForFileStatement().run(filePath);
314
+ getDeleteFileChunkItemsStatement().run(filePath);
315
+ })();
231
316
  }
232
317
  catch (err) {
233
- console.error("[vectormind] failed to remove symbols:", filePath, err);
234
- }
235
- try {
236
- getDeleteFileChunkItemsStatement().run(filePath);
237
- }
238
- catch (err) {
239
- console.error("[vectormind] failed to remove file chunks:", filePath, err);
318
+ console.error("[vectormind] failed to remove file indexes:", filePath, err);
319
+ return;
240
320
  }
241
321
  logActivity("remove_file", { file_path: filePath });
242
322
  }
@@ -1 +1 @@
1
- {"version":3,"file":"file-indexing.js","sourceRoot":"","sources":["../src/file-indexing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAK7B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAe5C,IAAI,mBAAmB,GAA+B,IAAI,CAAC;AAE3D,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAA8B,CAAC;AAClE,IAAI,uBAAuB,GAA0B,IAAI,CAAC;AAC1D,IAAI,uBAAuB,GAAG,CAAC,CAAC;AAEhC,MAAM,UAAU,qBAAqB,CAAC,OAA4B;IAChE,mBAAmB,GAAG,OAAO,CAAC;AAChC,CAAC;AAED,SAAS,0BAA0B;IACjC,IAAI,CAAC,mBAAmB;QAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAClG,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED,SAAS,KAAK;IACZ,OAAO,CAAC,CAAC,0BAA0B,EAAE,CAAC,KAAK,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,KAAK;IACZ,MAAM,EAAE,GAAG,0BAA0B,EAAE,CAAC,KAAK,EAAE,CAAC;IAChD,IAAI,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IACrE,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,cAAc;IACrB,OAAO,0BAA0B,EAAE,CAAC,cAAc,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiB;IAC1C,OAAO,0BAA0B,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,qBAAqB;IAC5B,OAAO,0BAA0B,EAAE,CAAC,qBAAqB,EAAE,CAAC;AAC9D,CAAC;AAED,SAAS,gCAAgC;IACvC,OAAO,0BAA0B,EAAE,CAAC,gCAAgC,EAAE,CAAC;AACzE,CAAC;AAED,SAAS,4BAA4B;IACnC,OAAO,0BAA0B,EAAE,CAAC,4BAA4B,EAAE,CAAC;AACrE,CAAC;AAED,SAAS,+BAA+B;IACtC,OAAO,0BAA0B,EAAE,CAAC,+BAA+B,EAAE,CAAC;AACxE,CAAC;AAED,SAAS,gCAAgC;IACvC,OAAO,0BAA0B,EAAE,CAAC,gCAAgC,EAAE,CAAC;AACzE,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC9B,OAAO,0BAA0B,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,mBAAmB;IAC1B,0BAA0B,EAAE,CAAC,mBAAmB,EAAE,CAAC;AACrD,CAAC;AAED,SAAS,gBAAgB,CACvB,OAAe,EACf,IAA4C;IAE5C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAElC,MAAM,MAAM,GAAgB,EAAE,CAAC;IAC/B,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,YAAY,GAAa,EAAE,CAAC;IAChC,IAAI,YAAY,GAAG,CAAC,CAAC;IAErB,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QACxB,MAAM,SAAS,GAAG,YAAY,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QAE1C,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxF,MAAM,OAAO,GAAG,SAAS,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;YACpD,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtE,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC;YACpB,YAAY,GAAG,EAAE,CAAC;YAClB,YAAY,GAAG,CAAC,CAAC;QACnB,CAAC;QAED,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,YAAY,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,SAAS,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AACD,SAAS,sBAAsB,CAC7B,UAAkB,EAClB,OAAe,EACf,OAAe;IAEf,MAAM,IAAI,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,CAAC;IAEpB,MAAM,IAAI,GACR,IAAI,KAAK,YAAY;QACnB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE;QACrC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IAChD,MAAM,QAAQ,GAAG,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAEnC,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;QAClC,gCAAgC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACnD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,GAAG,UAAU,KAAK,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;YACpE,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC7C,4BAA4B,EAAE,CAAC,GAAG,CAChC,IAAI,EACJ,KAAK,EACL,KAAK,CAAC,OAAO,EACb,UAAU,EACV,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,OAAO,EACb,IAAI,EACJ,QAAQ,EACR,WAAW,CACZ,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,EAAE,EAAE,CAAC;IACP,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;AACvB,CAAC;AAGD,MAAM,UAAU,wBAAwB;IACtC,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO;IACrB,IAAI,uBAAuB,EAAE,CAAC;QAC5B,YAAY,CAAC,uBAAuB,CAAC,CAAC;QACtC,uBAAuB,GAAG,IAAI,CAAC;IACjC,CAAC;IACD,IAAI,CAAC,mBAAmB,CAAC,IAAI;QAAE,OAAO;IACtC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1D,mBAAmB,CAAC,KAAK,EAAE,CAAC;IAE5B,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;YAClC,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxC,+BAA+B,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACzD,CAAC;QACH,CAAC,CAAC,CAAC;QACH,EAAE,EAAE,CAAC;IACP,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,qDAAqD,EAAE,GAAG,CAAC,CAAC;IAC5E,CAAC;IAED,WAAW,CAAC,eAAe,EAAE;QAC3B,OAAO,EAAE,OAAO,CAAC,MAAM;QACvB,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;KAC3F,CAAC,CAAC;IAEH,uBAAuB,IAAI,OAAO,CAAC,MAAM,CAAC;IAC1C,IAAI,uBAAuB,IAAI,mBAAmB,EAAE,CAAC;QACnD,uBAAuB,GAAG,CAAC,CAAC;QAC5B,mBAAmB,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,KAAyB;IAC5E,IAAI,gBAAgB,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC;QAAE,OAAO;IACxD,MAAM,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,IAAI,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAChF,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC5C,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACzC,IAAI,uBAAuB;QAAE,OAAO;IACpC,IAAI,gBAAgB,KAAK,CAAC,EAAE,CAAC;QAC3B,wBAAwB,EAAE,CAAC;QAC3B,OAAO;IACT,CAAC;IACD,uBAAuB,GAAG,UAAU,CAAC,wBAAwB,EAAE,gBAAgB,CAAC,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,OAAe,EAAE,MAAmB;IAC5D,IAAI,gBAAgB,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC;QAAE,OAAO;IACxD,MAAM,YAAY,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY;QAAE,OAAO;IAE3C,MAAM,IAAI,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAI,CAAC,IAAI;QAAE,OAAO;IAElB,IAAI,IAAc,CAAC;IACnB,IAAI,CAAC;QACH,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;IACT,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;QAAE,OAAO;IAC3B,MAAM,QAAQ,GAAG,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,mBAAmB,CAAC;IACpF,IAAI,QAAQ,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,GAAG,QAAQ;QAAE,OAAO;IAEjD,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO;IAEvC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IAChD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC5C,IACE,mBAAmB;QACnB,IAAI,KAAK,YAAY;QACrB,CAAC,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM,CAAC;QACrE,uBAAuB,CAAC,OAAO,CAAC,EAChC,CAAC;QACD,WAAW,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAChG,OAAO;IACT,CAAC;IACD,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;QACpF,WAAW,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/F,OAAO;IACT,CAAC;IAED,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACjD,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC;YACH,qBAAqB,EAAE,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,UAAU,GAAG,sBAAsB,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,WAAW,CAAC,YAAY,EAAE;QACxB,SAAS,EAAE,QAAQ;QACnB,MAAM;QACN,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,UAAU;QAClB,KAAK,EAAE,IAAI,CAAC,IAAI;KACjB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,IAAI,gBAAgB,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC;QAAE,OAAO;IACxD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC5C,IAAI,CAAC;QACH,gCAAgC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,CAAC;QACH,gCAAgC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC7E,CAAC;IACD,WAAW,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"file-indexing.js","sourceRoot":"","sources":["../src/file-indexing.ts"],"names":[],"mappings":"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"}