@mnemonik/shared 5.131.4 → 5.136.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.
@@ -29,6 +29,16 @@ export interface ScanOptions {
29
29
  * doc-truth Fingerprint parsing. Operates on relative, forward-slash paths.
30
30
  */
31
31
  export declare const AUTHORITY_FILE_MATCHERS: Array<(relPath: string) => boolean>;
32
+ /**
33
+ * Segment-anchored match for the `tests/fixtures/` ignore pattern above —
34
+ * matches at the path root or immediately after a `/`, mirroring exactly
35
+ * what `shouldIgnore` compiles `'/tests/fixtures/*'` to. Exported so
36
+ * server-side consumers (e.g. the `/scan/push` route) and query-time
37
+ * consumers (e.g. `MemoryManager.searchCodePointers`'s hygiene exclusions)
38
+ * share one definition instead of hand-rolling copies that can drift.
39
+ */
40
+ export declare const FIXTURE_PATH_RE: RegExp;
41
+ export declare function isFixturePath(path: string): boolean;
32
42
  /**
33
43
  * True when `dirPath` is the root of a DIFFERENT repository than the one
34
44
  * being scanned: it carries its own `.git` entry. A `.git` FILE marks a
@@ -1 +1 @@
1
- {"version":3,"file":"codeScanner.d.ts","sourceRoot":"","sources":["../src/codeScanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codeScanner.d.ts","sourceRoot":"","sources":["../src/codeScanner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAcH,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE;QACR,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAkGD;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAiBvE,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,QAA4B,CAAC;AACzD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAWrE;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,OAAO,CAAwB;gBAE3B,OAAO,GAAE,WAAgB;IAIrC;;;;;OAKG;YACW,uBAAuB;IAarC;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAM;IAEvC;;;;;;OAMG;YACW,cAAc;IAM5B;;;OAGG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAK3D;;;;;;;OAOG;IACG,uBAAuB,CAC3B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;QAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IAOtD;;;;;;;;;;;;;;;OAeG;IACG,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKpD;;;;;;OAMG;IACG,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;YAU9E,aAAa;IAwD3B;;;OAGG;IACG,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IA6B5E;;;;;;;;;OASG;IACH,OAAO,CAAC,WAAW;IAYnB;;;OAGG;YACW,iBAAiB;IAwE/B;;;;;;;OAOG;IACH,OAAO,CAAC,YAAY;IAyBpB;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAoB;YAE3C,SAAS;IAoGvB;;OAEG;IACH,OAAO,CAAC,cAAc;IAwBtB;;OAEG;IACH,OAAO,CAAC,aAAa;IAoFrB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IA0GzB;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAoE/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAqD3B;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,QAAQ;IA2FhB;;OAEG;IACH,OAAO,CAAC,IAAI;IAIZ;;;;OAIG;IACG,qBAAqB,CACzB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAKlE;;;;;;OAMG;IACG,+BAA+B,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;QAClE,KAAK,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC9D,QAAQ,EAAE,OAAO,CAAC;KACnB,CAAC;CAsEH"}
@@ -49,6 +49,23 @@ const DEFAULT_OPTIONS = {
49
49
  '*.bundle.js',
50
50
  '*.legacy.js',
51
51
  '*.map',
52
+ // Test fixture snapshot directories — historical before/after doc-truth
53
+ // dogfood copies (e.g. tests/fixtures/docTruth/*/before/src/...) were
54
+ // getting indexed as if they were real source, and a stale snapshot
55
+ // chunk could outrank the genuine file it duplicates in code_search
56
+ // (MemoryManager.searchCodePointers has a matching interim query-time
57
+ // exclusion for already-indexed rows; this is the scanner-level fix so
58
+ // new scans never pick them up in the first place). Retroactive cleanup
59
+ // of already-indexed fixture chunks happens on the next inventory diff —
60
+ // the daemon picks this up at its next package release, the in-process
61
+ // refresh tool gets it immediately.
62
+ //
63
+ // Leading '/' = segment-anchored (see shouldIgnore): matches tests/fixtures/
64
+ // at the path root or immediately after a '/' — so nested dirs like
65
+ // packages/x/tests/fixtures/ are also excluded, but integration-tests/fixtures/
66
+ // is NOT. The previous unanchored 'tests/fixtures/*' compiled to a bare
67
+ // substring regex and wrongly excluded any directory merely ENDING in "tests".
68
+ '/tests/fixtures/*',
52
69
  // NOTE: transient agent worktrees (previously `.claude/worktrees/*`
53
70
  // here) are no longer excluded by path convention. Linked worktrees,
54
71
  // nested clones, and submodules are all excluded generically by the
@@ -100,6 +117,18 @@ export const AUTHORITY_FILE_MATCHERS = [
100
117
  // every schema_table_enumeration claim falls to unverifiable.
101
118
  (p) => /^migrations\/.*\.sql$/.test(p),
102
119
  ];
120
+ /**
121
+ * Segment-anchored match for the `tests/fixtures/` ignore pattern above —
122
+ * matches at the path root or immediately after a `/`, mirroring exactly
123
+ * what `shouldIgnore` compiles `'/tests/fixtures/*'` to. Exported so
124
+ * server-side consumers (e.g. the `/scan/push` route) and query-time
125
+ * consumers (e.g. `MemoryManager.searchCodePointers`'s hygiene exclusions)
126
+ * share one definition instead of hand-rolling copies that can drift.
127
+ */
128
+ export const FIXTURE_PATH_RE = /(^|\/)tests\/fixtures\//;
129
+ export function isFixturePath(path) {
130
+ return FIXTURE_PATH_RE.test(path);
131
+ }
103
132
  /**
104
133
  * True when `dirPath` is the root of a DIFFERENT repository than the one
105
134
  * being scanned: it carries its own `.git` entry. A `.git` FILE marks a
@@ -387,9 +416,19 @@ export class CodeScanner {
387
416
  const segments = path.split('/');
388
417
  return this.options.ignorePatterns.some((pattern) => {
389
418
  if (pattern.includes('*')) {
419
+ // A leading '/' opts a glob pattern into SEGMENT-ANCHORED matching:
420
+ // the pattern body must start at the beginning of the path or right
421
+ // after a '/'. Without it, glob patterns keep their historical
422
+ // unanchored substring semantics — anchoring is opt-in per pattern so
423
+ // this change cannot alter any existing pattern's behavior.
424
+ // (Motivating bug: unanchored 'tests/fixtures/*' also matched
425
+ // 'integration-tests/fixtures/…' in every indexed project.)
426
+ const anchored = pattern.startsWith('/');
427
+ const body = anchored ? pattern.slice(1) : pattern;
390
428
  // Escape regex special chars, then replace all * with .*
391
- const escaped = pattern.replace(/[.+?^${}()|[\]\\]/g, '\\$&');
392
- const regex = new RegExp(escaped.replace(/\*/g, '.*'));
429
+ const escaped = body.replace(/[.+?^${}()|[\]\\]/g, '\\$&');
430
+ const source = escaped.replace(/\*/g, '.*');
431
+ const regex = new RegExp(anchored ? `(^|/)${source}` : source);
393
432
  return regex.test(path);
394
433
  }
395
434
  // For non-glob patterns, check if any path segment matches exactly
@@ -416,7 +455,18 @@ export class CodeScanner {
416
455
  return [];
417
456
  }
418
457
  // Wrap readFile with timeout
419
- const content = await withTimeout(readFile(filePath, 'utf-8'), FILE_OP_TIMEOUT_MS, `readFile timed out: ${filePath}`);
458
+ let content = await withTimeout(readFile(filePath, 'utf-8'), FILE_OP_TIMEOUT_MS, `readFile timed out: ${filePath}`);
459
+ // NUL sanitation (ingestion boundary, daemon side): Postgres `text`
460
+ // columns reject the literal NUL byte (U+0000) — a single one aborts
461
+ // the whole INSERT/UPDATE. Some source files legitimately contain
462
+ // them. Strip before any chunking so every chunk's content, its
463
+ // contentHash, and its embedding all agree — mirrors the server-side
464
+ // strip in ProjectManager (kept as defense in depth for content that
465
+ // reaches the server via an older scanner) but doing it here means
466
+ // the daemon never even transmits the NUL bytes.
467
+ if (content.includes('\0')) {
468
+ content = content.replace(/\0/g, '');
469
+ }
420
470
  const relativePath = relative(rootPath, filePath);
421
471
  const language = this.detectLanguage(filePath);
422
472
  // Try to extract functions/classes
@@ -966,11 +1016,18 @@ export class CodeScanner {
966
1016
  }
967
1017
  else if (isFile && AUTHORITY_FILE_MATCHERS.some((m) => m(rel))) {
968
1018
  try {
969
- const content = await readFile(full, 'utf-8');
1019
+ let content = await readFile(full, 'utf-8');
970
1020
  // C2: skip files whose content exceeds the server's 5MB cap —
971
1021
  // manifests are tiny; an oversized one is anomalous.
972
1022
  if (content.length > 5_000_000)
973
1023
  continue;
1024
+ // NUL sanitation (ingestion boundary, daemon side): Postgres
1025
+ // `text` columns reject the literal NUL byte (U+0000). Authority
1026
+ // files are shipped verbatim (no chunking), so strip here before
1027
+ // hashing so the hash and the transmitted content always agree.
1028
+ if (content.includes('\0')) {
1029
+ content = content.replace(/\0/g, '');
1030
+ }
974
1031
  const hash = createHash('sha256').update(content).digest('hex');
975
1032
  out.push({ path: rel, content, hash });
976
1033
  }
@@ -1 +1 @@
1
- {"version":3,"file":"codeScanner.js","sourceRoot":"","sources":["../src/codeScanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codeScanner.js","sourceRoot":"","sources":["../src/codeScanner.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -6,7 +6,7 @@
6
6
  */
7
7
  export { MCP_INSTRUCTIONS, MCP_INSTRUCTIONS_RAW, getMcpInstructions } from './instructions.js';
8
8
  export { USAGE_GUIDE } from './usageGuide.js';
9
- export { CodeScanner, AUTHORITY_FILE_MATCHERS, isGitBoundary, type CodeChunk, type ScanOptions, } from './codeScanner.js';
9
+ export { CodeScanner, AUTHORITY_FILE_MATCHERS, isGitBoundary, FIXTURE_PATH_RE, isFixturePath, type CodeChunk, type ScanOptions, } from './codeScanner.js';
10
10
  export { FileSystemReader, getFileSystemReader, type ScanFilesResult, type ChangedFilesResult, type FileData, } from './FileSystemReader.js';
11
11
  export { SECRET_PATTERNS, SECRET_REDACTION_PLACEHOLDER, scrubSecrets } from './secretPatterns.js';
12
12
  export { FETCH_TIMEOUT_MS, TELEMETRY_TIMEOUT_MS, POST_TOOL_TIMEOUT_MS, MCP_PRECHECK_TIMEOUT_MS, withHookTimeout, } from './hookTimeouts.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,WAAW,EACX,uBAAuB,EACvB,aAAa,EACb,KAAK,SAAS,EACd,KAAK,WAAW,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,QAAQ,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,4BAA4B,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,GAChB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,WAAW,EACX,uBAAuB,EACvB,aAAa,EACb,eAAe,EACf,aAAa,EACb,KAAK,SAAS,EACd,KAAK,WAAW,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,QAAQ,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,4BAA4B,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,GAChB,MAAM,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -6,7 +6,7 @@
6
6
  */
7
7
  export { MCP_INSTRUCTIONS, MCP_INSTRUCTIONS_RAW, getMcpInstructions } from './instructions.js';
8
8
  export { USAGE_GUIDE } from './usageGuide.js';
9
- export { CodeScanner, AUTHORITY_FILE_MATCHERS, isGitBoundary, } from './codeScanner.js';
9
+ export { CodeScanner, AUTHORITY_FILE_MATCHERS, isGitBoundary, FIXTURE_PATH_RE, isFixturePath, } from './codeScanner.js';
10
10
  export { FileSystemReader, getFileSystemReader, } from './FileSystemReader.js';
11
11
  export { SECRET_PATTERNS, SECRET_REDACTION_PLACEHOLDER, scrubSecrets } from './secretPatterns.js';
12
12
  export { FETCH_TIMEOUT_MS, TELEMETRY_TIMEOUT_MS, POST_TOOL_TIMEOUT_MS, MCP_PRECHECK_TIMEOUT_MS, withHookTimeout, } from './hookTimeouts.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,WAAW,EACX,uBAAuB,EACvB,aAAa,GAGd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,gBAAgB,EAChB,mBAAmB,GAIpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,4BAA4B,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,GAChB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,WAAW,EACX,uBAAuB,EACvB,aAAa,EACb,eAAe,EACf,aAAa,GAGd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,gBAAgB,EAChB,mBAAmB,GAIpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,4BAA4B,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,GAChB,MAAM,mBAAmB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mnemonik/shared",
3
- "version": "5.131.4",
3
+ "version": "5.136.1",
4
4
  "description": "Shared constants and utilities for Mnemonik packages",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -88,6 +88,23 @@ const DEFAULT_OPTIONS: Required<ScanOptions> = {
88
88
  '*.bundle.js',
89
89
  '*.legacy.js',
90
90
  '*.map',
91
+ // Test fixture snapshot directories — historical before/after doc-truth
92
+ // dogfood copies (e.g. tests/fixtures/docTruth/*/before/src/...) were
93
+ // getting indexed as if they were real source, and a stale snapshot
94
+ // chunk could outrank the genuine file it duplicates in code_search
95
+ // (MemoryManager.searchCodePointers has a matching interim query-time
96
+ // exclusion for already-indexed rows; this is the scanner-level fix so
97
+ // new scans never pick them up in the first place). Retroactive cleanup
98
+ // of already-indexed fixture chunks happens on the next inventory diff —
99
+ // the daemon picks this up at its next package release, the in-process
100
+ // refresh tool gets it immediately.
101
+ //
102
+ // Leading '/' = segment-anchored (see shouldIgnore): matches tests/fixtures/
103
+ // at the path root or immediately after a '/' — so nested dirs like
104
+ // packages/x/tests/fixtures/ are also excluded, but integration-tests/fixtures/
105
+ // is NOT. The previous unanchored 'tests/fixtures/*' compiled to a bare
106
+ // substring regex and wrongly excluded any directory merely ENDING in "tests".
107
+ '/tests/fixtures/*',
91
108
  // NOTE: transient agent worktrees (previously `.claude/worktrees/*`
92
109
  // here) are no longer excluded by path convention. Linked worktrees,
93
110
  // nested clones, and submodules are all excluded generically by the
@@ -141,6 +158,19 @@ export const AUTHORITY_FILE_MATCHERS: Array<(relPath: string) => boolean> = [
141
158
  (p) => /^migrations\/.*\.sql$/.test(p),
142
159
  ];
143
160
 
161
+ /**
162
+ * Segment-anchored match for the `tests/fixtures/` ignore pattern above —
163
+ * matches at the path root or immediately after a `/`, mirroring exactly
164
+ * what `shouldIgnore` compiles `'/tests/fixtures/*'` to. Exported so
165
+ * server-side consumers (e.g. the `/scan/push` route) and query-time
166
+ * consumers (e.g. `MemoryManager.searchCodePointers`'s hygiene exclusions)
167
+ * share one definition instead of hand-rolling copies that can drift.
168
+ */
169
+ export const FIXTURE_PATH_RE = /(^|\/)tests\/fixtures\//;
170
+ export function isFixturePath(path: string): boolean {
171
+ return FIXTURE_PATH_RE.test(path);
172
+ }
173
+
144
174
  /**
145
175
  * True when `dirPath` is the root of a DIFFERENT repository than the one
146
176
  * being scanned: it carries its own `.git` entry. A `.git` FILE marks a
@@ -473,9 +503,19 @@ export class CodeScanner {
473
503
  const segments = path.split('/');
474
504
  return this.options.ignorePatterns.some((pattern) => {
475
505
  if (pattern.includes('*')) {
506
+ // A leading '/' opts a glob pattern into SEGMENT-ANCHORED matching:
507
+ // the pattern body must start at the beginning of the path or right
508
+ // after a '/'. Without it, glob patterns keep their historical
509
+ // unanchored substring semantics — anchoring is opt-in per pattern so
510
+ // this change cannot alter any existing pattern's behavior.
511
+ // (Motivating bug: unanchored 'tests/fixtures/*' also matched
512
+ // 'integration-tests/fixtures/…' in every indexed project.)
513
+ const anchored = pattern.startsWith('/');
514
+ const body = anchored ? pattern.slice(1) : pattern;
476
515
  // Escape regex special chars, then replace all * with .*
477
- const escaped = pattern.replace(/[.+?^${}()|[\]\\]/g, '\\$&');
478
- const regex = new RegExp(escaped.replace(/\*/g, '.*'));
516
+ const escaped = body.replace(/[.+?^${}()|[\]\\]/g, '\\$&');
517
+ const source = escaped.replace(/\*/g, '.*');
518
+ const regex = new RegExp(anchored ? `(^|/)${source}` : source);
479
519
  return regex.test(path);
480
520
  }
481
521
  // For non-glob patterns, check if any path segment matches exactly
@@ -509,11 +549,22 @@ export class CodeScanner {
509
549
  }
510
550
 
511
551
  // Wrap readFile with timeout
512
- const content = await withTimeout(
552
+ let content = await withTimeout(
513
553
  readFile(filePath, 'utf-8'),
514
554
  FILE_OP_TIMEOUT_MS,
515
555
  `readFile timed out: ${filePath}`
516
556
  );
557
+ // NUL sanitation (ingestion boundary, daemon side): Postgres `text`
558
+ // columns reject the literal NUL byte (U+0000) — a single one aborts
559
+ // the whole INSERT/UPDATE. Some source files legitimately contain
560
+ // them. Strip before any chunking so every chunk's content, its
561
+ // contentHash, and its embedding all agree — mirrors the server-side
562
+ // strip in ProjectManager (kept as defense in depth for content that
563
+ // reaches the server via an older scanner) but doing it here means
564
+ // the daemon never even transmits the NUL bytes.
565
+ if (content.includes('\0')) {
566
+ content = content.replace(/\0/g, '');
567
+ }
517
568
  const relativePath = relative(rootPath, filePath);
518
569
  const language = this.detectLanguage(filePath);
519
570
 
@@ -1113,10 +1164,17 @@ export class CodeScanner {
1113
1164
  await walk(full, depth + 1);
1114
1165
  } else if (isFile && AUTHORITY_FILE_MATCHERS.some((m) => m(rel))) {
1115
1166
  try {
1116
- const content = await readFile(full, 'utf-8');
1167
+ let content = await readFile(full, 'utf-8');
1117
1168
  // C2: skip files whose content exceeds the server's 5MB cap —
1118
1169
  // manifests are tiny; an oversized one is anomalous.
1119
1170
  if (content.length > 5_000_000) continue;
1171
+ // NUL sanitation (ingestion boundary, daemon side): Postgres
1172
+ // `text` columns reject the literal NUL byte (U+0000). Authority
1173
+ // files are shipped verbatim (no chunking), so strip here before
1174
+ // hashing so the hash and the transmitted content always agree.
1175
+ if (content.includes('\0')) {
1176
+ content = content.replace(/\0/g, '');
1177
+ }
1120
1178
  const hash = createHash('sha256').update(content).digest('hex');
1121
1179
  out.push({ path: rel, content, hash });
1122
1180
  } catch {
package/src/index.ts CHANGED
@@ -11,6 +11,8 @@ export {
11
11
  CodeScanner,
12
12
  AUTHORITY_FILE_MATCHERS,
13
13
  isGitBoundary,
14
+ FIXTURE_PATH_RE,
15
+ isFixturePath,
14
16
  type CodeChunk,
15
17
  type ScanOptions,
16
18
  } from './codeScanner.js';