@mnemonik/shared 7.141.0 → 7.141.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"secretPatterns.js","sourceRoot":"","sources":["../src/secretPatterns.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"secretPatterns.js","sourceRoot":"","sources":["../src/secretPatterns.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ /** Source syntax stays executable; unsupported or incomplete input uses the conservative scrubber. */
2
+ export declare function scrubSourceSecrets(text: string, filePath: string): Promise<string>;
3
+ //# sourceMappingURL=sourceRedaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sourceRedaction.d.ts","sourceRoot":"","sources":["../src/sourceRedaction.ts"],"names":[],"mappings":"AAgBA,sGAAsG;AACtG,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA6BxF"}
@@ -0,0 +1,143 @@
1
+ import { extname } from 'node:path';
2
+ import { Parser } from 'web-tree-sitter';
3
+ import { loadGrammar } from './ast/grammars.js';
4
+ import { MAX_AST_PARSE_BYTES } from './ast/astChunker.js';
5
+ import { redactCredentials } from './redactCredentials.js';
6
+ import { redactHighEntropyTokens, redactSecretValue, scrubSecrets, SECRET_LABEL_RE, } from './secretPatterns.js';
7
+ function scrubPayload(text) {
8
+ return redactCredentials(scrubSecrets(text), { commandLineOnly: true }).text;
9
+ }
10
+ /** Source syntax stays executable; unsupported or incomplete input uses the conservative scrubber. */
11
+ export async function scrubSourceSecrets(text, filePath) {
12
+ const extension = extname(filePath).toLowerCase();
13
+ const language = ['.ts', '.mts', '.cts'].includes(extension)
14
+ ? 'typescript'
15
+ : extension === '.tsx'
16
+ ? 'tsx'
17
+ : ['.js', '.jsx', '.mjs', '.cjs'].includes(extension)
18
+ ? 'javascript'
19
+ : null;
20
+ if (!text || !language || Buffer.byteLength(text, 'utf8') > MAX_AST_PARSE_BYTES) {
21
+ return scrubPayload(text);
22
+ }
23
+ let parser;
24
+ let tree = null;
25
+ try {
26
+ const grammar = await loadGrammar(language);
27
+ if ('unavailable' in grammar)
28
+ return scrubPayload(text);
29
+ parser = new Parser();
30
+ parser.setLanguage(grammar.ok.language);
31
+ tree = parser.parse(text);
32
+ if (!tree || tree.rootNode.hasError)
33
+ return scrubPayload(text);
34
+ const root = tree.rootNode;
35
+ return text.slice(0, root.startIndex) + redactNode(root) + text.slice(root.endIndex);
36
+ }
37
+ catch {
38
+ return scrubPayload(text);
39
+ }
40
+ finally {
41
+ tree?.delete();
42
+ parser?.delete();
43
+ }
44
+ }
45
+ function secretLabel(node) {
46
+ if (!node)
47
+ return false;
48
+ const property = node.childForFieldName('property') ?? node;
49
+ const name = property.type === 'string' ? property.text.slice(1, -1) : property.text;
50
+ return SECRET_LABEL_RE.test(name);
51
+ }
52
+ function literalPayload(text, sensitive) {
53
+ if (sensitive && /[A-Za-z0-9]/.test(text))
54
+ return redactSecretValue(text);
55
+ // Only the entropy backstop needs an opening quote; labeled values must not consume it.
56
+ return redactHighEntropyTokens('"' + scrubPayload(text) + '"').slice(1, -1);
57
+ }
58
+ function redactNode(node, sensitive = false) {
59
+ const original = node.text;
60
+ if (node.type === 'comment') {
61
+ return original.startsWith('/*')
62
+ ? '/*' + scrubPayload(original.slice(2, -2)) + '*/'
63
+ : '//' + scrubPayload(original.slice(2));
64
+ }
65
+ if (node.type === 'string') {
66
+ return original[0] + literalPayload(original.slice(1, -1), sensitive) + original.at(-1);
67
+ }
68
+ if (node.type === 'property_identifier' &&
69
+ node.parent?.type === 'pair' &&
70
+ node.parent.childForFieldName('key')?.id === node.id) {
71
+ const payload = literalPayload(original, false);
72
+ return payload === original ? original : '"' + payload + '"';
73
+ }
74
+ if (node.type === 'number' && sensitive)
75
+ return `'${redactSecretValue(original)}'`;
76
+ if (node.type === 'template_string') {
77
+ let result = '`';
78
+ let offset = node.startIndex + 1;
79
+ for (const child of node.namedChildren) {
80
+ if (child.type !== 'template_substitution')
81
+ continue;
82
+ result += literalPayload(original.slice(offset - node.startIndex, child.startIndex - node.startIndex), sensitive);
83
+ result += redactNode(child);
84
+ offset = child.endIndex;
85
+ }
86
+ return result + literalPayload(original.slice(offset - node.startIndex, -1), sensitive) + '`';
87
+ }
88
+ if (node.type === 'regex_pattern' || node.type === 'jsx_text')
89
+ return scrubPayload(original);
90
+ // A bare `token: value` fragment is also a valid JS labeled statement.
91
+ if (node.type === 'labeled_statement' && secretLabel(node.childForFieldName('label'))) {
92
+ const body = node.childForFieldName('body');
93
+ if (body?.firstNamedChild?.type === 'identifier')
94
+ return scrubPayload(original);
95
+ }
96
+ let value = null;
97
+ let key = null;
98
+ if ([
99
+ 'variable_declarator',
100
+ 'pair',
101
+ 'public_field_definition',
102
+ 'assignment_pattern',
103
+ 'required_parameter',
104
+ ].includes(node.type)) {
105
+ key =
106
+ node.childForFieldName('name') ??
107
+ node.childForFieldName('key') ??
108
+ node.childForFieldName('pattern') ??
109
+ node.childForFieldName('left');
110
+ value = node.childForFieldName('value') ?? node.childForFieldName('right');
111
+ }
112
+ else if (node.type === 'assignment_expression') {
113
+ key = node.childForFieldName('left');
114
+ value = node.childForFieldName('right');
115
+ }
116
+ else if (node.type === 'jsx_attribute') {
117
+ [key = null, value = null] = node.namedChildren;
118
+ }
119
+ const labeled = secretLabel(key);
120
+ let result = '';
121
+ let offset = node.startIndex;
122
+ for (const child of node.namedChildren) {
123
+ result += original.slice(offset - node.startIndex, child.startIndex - node.startIndex);
124
+ // Carry labels through value wrappers, never through call arguments or conditions.
125
+ const carry = sensitive &&
126
+ (([
127
+ 'parenthesized_expression',
128
+ 'as_expression',
129
+ 'satisfies_expression',
130
+ 'non_null_expression',
131
+ ].includes(node.type) &&
132
+ child.id === node.firstNamedChild?.id) ||
133
+ (node.type === 'type_assertion' && child.id === node.lastNamedChild?.id) ||
134
+ (node.type === 'binary_expression' &&
135
+ ['+', '||', '&&', '??'].includes(node.childForFieldName('operator')?.text ?? '')) ||
136
+ (node.type === 'ternary_expression' &&
137
+ child.id !== node.childForFieldName('condition')?.id));
138
+ result += redactNode(child, carry || (labeled && child.id === value?.id));
139
+ offset = child.endIndex;
140
+ }
141
+ return result + original.slice(offset - node.startIndex);
142
+ }
143
+ //# sourceMappingURL=sourceRedaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sourceRedaction.js","sourceRoot":"","sources":["../src/sourceRedaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAwB,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EACL,uBAAuB,EACvB,iBAAiB,EACjB,YAAY,EACZ,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAE7B,SAAS,YAAY,CAAC,IAAY;IAChC,OAAO,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;AAC/E,CAAC;AAED,sGAAsG;AACtG,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAY,EAAE,QAAgB;IACrE,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IAClD,MAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,SAAS,KAAK,MAAM;YACpB,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;gBACnD,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,IAAI,CAAC;IACb,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,mBAAmB,EAAE,CAAC;QAChF,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,MAA0B,CAAC;IAC/B,IAAI,IAAI,GAAgB,IAAI,CAAC;IAC7B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,aAAa,IAAI,OAAO;YAAE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACtB,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ;YAAE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;YAAS,CAAC;QACT,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,IAAiB;IACpC,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;IAC5D,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACrF,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,cAAc,CAAC,IAAY,EAAE,SAAkB;IACtD,IAAI,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1E,wFAAwF;IACxF,OAAO,uBAAuB,CAAC,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,UAAU,CAAC,IAAU,EAAE,SAAS,GAAG,KAAK;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;IAC3B,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;YAC9B,CAAC,CAAC,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;YACnD,CAAC,CAAC,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1F,CAAC;IACD,IACE,IAAI,CAAC,IAAI,KAAK,qBAAqB;QACnC,IAAI,CAAC,MAAM,EAAE,IAAI,KAAK,MAAM;QAC5B,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,EACpD,CAAC;QACD,MAAM,OAAO,GAAG,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAChD,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,OAAO,GAAG,GAAG,CAAC;IAC/D,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS;QAAE,OAAO,IAAI,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC;IACnF,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;QACpC,IAAI,MAAM,GAAG,GAAG,CAAC;QACjB,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACjC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvC,IAAI,KAAK,CAAC,IAAI,KAAK,uBAAuB;gBAAE,SAAS;YACrD,MAAM,IAAI,cAAc,CACtB,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,EAC5E,SAAS,CACV,CAAC;YACF,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;YAC5B,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC1B,CAAC;QACD,OAAO,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,GAAG,CAAC;IAChG,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC7F,uEAAuE;IACvE,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB,IAAI,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QACtF,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,IAAI,EAAE,eAAe,EAAE,IAAI,KAAK,YAAY;YAAE,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,KAAK,GAAgB,IAAI,CAAC;IAC9B,IAAI,GAAG,GAAgB,IAAI,CAAC;IAC5B,IACE;QACE,qBAAqB;QACrB,MAAM;QACN,yBAAyB;QACzB,oBAAoB;QACpB,oBAAoB;KACrB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EACrB,CAAC;QACD,GAAG;YACD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;gBAC9B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;gBAC7B,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;gBACjC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACjC,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC7E,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,uBAAuB,EAAE,CAAC;QACjD,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACrC,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QACzC,CAAC,GAAG,GAAG,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC;IAClD,CAAC;IACD,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;IAC7B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvC,MAAM,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;QACvF,mFAAmF;QACnF,MAAM,KAAK,GACT,SAAS;YACT,CAAC,CAAC;gBACA,0BAA0B;gBAC1B,eAAe;gBACf,sBAAsB;gBACtB,qBAAqB;aACtB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;gBACnB,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;gBACtC,CAAC,IAAI,CAAC,IAAI,KAAK,gBAAgB,IAAI,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;gBACxE,CAAC,IAAI,CAAC,IAAI,KAAK,mBAAmB;oBAChC,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;gBACnF,CAAC,IAAI,CAAC,IAAI,KAAK,oBAAoB;oBACjC,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC7D,MAAM,IAAI,UAAU,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,EAAE,KAAK,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1E,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC;IAC1B,CAAC;IACD,OAAO,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;AAC3D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mnemonik/shared",
3
- "version": "7.141.0",
3
+ "version": "7.141.2",
4
4
  "description": "Shared constants and utilities for Mnemonik packages",
5
5
  "repository": {
6
6
  "type": "git",
@@ -9,7 +9,7 @@ import { createHash } from 'crypto';
9
9
  import ignore, { type Ignore } from 'ignore';
10
10
  import { debug as logDebug, info as logInfo, warn as logWarn } from './logger.js';
11
11
  import { withTimeout } from './asyncUtils.js';
12
- import { scrubSecrets } from './secretPatterns.js';
12
+ import { scrubSourceSecrets } from './sourceRedaction.js';
13
13
  import { isProtectedLocalPath, protectedLocalPaths } from './protectedPaths.js';
14
14
  import { readIdentityFile } from './projectIdentityFile.js';
15
15
  import {
@@ -1274,7 +1274,7 @@ export class CodeScanner {
1274
1274
  const excluded: IndexExcludedFile[] = [];
1275
1275
  const walk: WalkState = { complete: true };
1276
1276
  await this.traverseDirectory(rootPath, rootPath, chunks, 0, walk, [], chunkless, excluded);
1277
- return { chunks: this.scrubChunks(chunks), complete: walk.complete, chunkless, excluded };
1277
+ return { chunks: await this.scrubChunks(chunks), complete: walk.complete, chunkless, excluded };
1278
1278
  }
1279
1279
 
1280
1280
  /**
@@ -1499,18 +1499,22 @@ export class CodeScanner {
1499
1499
  * before they leave this process. contentHash is recomputed from the
1500
1500
  * scrubbed content so the server-side dedup cache (which keys on
1501
1501
  * contentHash) hits when team members push the same scrubbed text.
1502
- * Server still re-applies scrubSecrets in the /scan/push handler as
1502
+ * Server still re-applies source sanitation in the /scan/push handler as
1503
1503
  * defense in depth (idempotent). Shared by `scanFiles` (watcher path)
1504
1504
  * and `scanDirectoryWithStatus` (initial/full-rescan path) so both
1505
1505
  * honor the same redaction guarantee.
1506
1506
  */
1507
- private scrubChunks(chunks: CodeChunk[]): CodeChunk[] {
1508
- return chunks.flatMap((chunk) => {
1509
- const scrubbed = scrubSecrets(chunk.content);
1507
+ private async scrubChunks(chunks: CodeChunk[]): Promise<CodeChunk[]> {
1508
+ const result: CodeChunk[] = [];
1509
+ for (const chunk of chunks) {
1510
+ const scrubbed = await scrubSourceSecrets(chunk.content.replace(/\0/g, ''), chunk.filePath);
1510
1511
  if (scrubbed.length <= MAX_PUSH_CHUNK_CONTENT_LENGTH) {
1511
- return scrubbed === chunk.content
1512
- ? [chunk]
1513
- : [{ ...chunk, content: scrubbed, contentHash: this.hash(scrubbed) }];
1512
+ result.push(
1513
+ ...(scrubbed === chunk.content
1514
+ ? [chunk]
1515
+ : [{ ...chunk, content: scrubbed, contentHash: this.hash(scrubbed) }])
1516
+ );
1517
+ continue;
1514
1518
  }
1515
1519
  const pieces: CodeChunk[] = [];
1516
1520
  let startLine = chunk.startLine;
@@ -1533,8 +1537,9 @@ export class CodeScanner {
1533
1537
  startLine = endLine;
1534
1538
  offset = end;
1535
1539
  }
1536
- return pieces;
1537
- });
1540
+ result.push(...pieces);
1541
+ }
1542
+ return result;
1538
1543
  }
1539
1544
 
1540
1545
  /**
@@ -1716,7 +1721,10 @@ export class CodeScanner {
1716
1721
  // the first 8,000 bytes now means "binary, skip" (git's heuristic)
1717
1722
  // instead of strip-and-index.
1718
1723
  if (contentGate.applyContentRules) {
1719
- const byContent = softDefaultForContent(relativePath, scrubSecrets(content));
1724
+ const byContent = softDefaultForContent(
1725
+ relativePath,
1726
+ await scrubSourceSecrets(content, relativePath)
1727
+ );
1720
1728
  if (byContent) {
1721
1729
  contentGate.excluded?.push({
1722
1730
  path: relativePath.split(sep).join('/'),
package/src/index.ts CHANGED
@@ -92,6 +92,12 @@ export {
92
92
  scrubSecrets,
93
93
  redactHighEntropyTokens,
94
94
  } from './secretPatterns.js';
95
+ export { scrubSourceSecrets } from './sourceRedaction.js';
96
+ export {
97
+ redactCredentials,
98
+ credentialValues,
99
+ type RedactCredentialsOptions,
100
+ } from './redactCredentials.js';
95
101
  export {
96
102
  FETCH_TIMEOUT_MS,
97
103
  TELEMETRY_TIMEOUT_MS,