code-auditor-mcp 3.6.0 → 3.7.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 (72) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +31 -0
  3. package/dist/analyzers/cross-language/DependencyGraphBuilder.d.ts.map +1 -1
  4. package/dist/analyzers/cross-language/DependencyGraphBuilder.js +12 -1
  5. package/dist/analyzers/cross-language/DependencyGraphBuilder.js.map +1 -1
  6. package/dist/analyzers/ruleRegistry.d.ts.map +1 -1
  7. package/dist/analyzers/ruleRegistry.js +133 -2
  8. package/dist/analyzers/ruleRegistry.js.map +1 -1
  9. package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts +29 -0
  10. package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts.map +1 -1
  11. package/dist/analyzers/universal/UniversalDRYAnalyzer.js +376 -6
  12. package/dist/analyzers/universal/UniversalDRYAnalyzer.js.map +1 -1
  13. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts +6 -0
  14. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts.map +1 -1
  15. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js +41 -7
  16. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js.map +1 -1
  17. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.d.ts.map +1 -1
  18. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js +13 -2
  19. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js.map +1 -1
  20. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts +20 -5
  21. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts.map +1 -1
  22. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js +83 -14
  23. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js.map +1 -1
  24. package/dist/analyzers/universal/UniversalSecretsAnalyzer.d.ts +55 -0
  25. package/dist/analyzers/universal/UniversalSecretsAnalyzer.d.ts.map +1 -0
  26. package/dist/analyzers/universal/UniversalSecretsAnalyzer.js +318 -0
  27. package/dist/analyzers/universal/UniversalSecretsAnalyzer.js.map +1 -0
  28. package/dist/analyzers/universal/functionConcerns.d.ts +52 -0
  29. package/dist/analyzers/universal/functionConcerns.d.ts.map +1 -0
  30. package/dist/analyzers/universal/functionConcerns.js +225 -0
  31. package/dist/analyzers/universal/functionConcerns.js.map +1 -0
  32. package/dist/analyzers/universal/schema/codeAnalysis.d.ts.map +1 -1
  33. package/dist/analyzers/universal/schema/codeAnalysis.js +9 -3
  34. package/dist/analyzers/universal/schema/codeAnalysis.js.map +1 -1
  35. package/dist/auditRunner.d.ts.map +1 -1
  36. package/dist/auditRunner.js +73 -47
  37. package/dist/auditRunner.js.map +1 -1
  38. package/dist/cli.js +41 -27
  39. package/dist/cli.js.map +1 -1
  40. package/dist/config/defaults.d.ts +3 -0
  41. package/dist/config/defaults.d.ts.map +1 -1
  42. package/dist/config/defaults.js +15 -2
  43. package/dist/config/defaults.js.map +1 -1
  44. package/dist/config/effectiveConfig.d.ts.map +1 -1
  45. package/dist/config/effectiveConfig.js +2 -0
  46. package/dist/config/effectiveConfig.js.map +1 -1
  47. package/dist/graph/importGraph.d.ts +11 -0
  48. package/dist/graph/importGraph.d.ts.map +1 -1
  49. package/dist/graph/importGraph.js +11 -3
  50. package/dist/graph/importGraph.js.map +1 -1
  51. package/dist/installer.d.ts.map +1 -1
  52. package/dist/installer.js +2 -5
  53. package/dist/installer.js.map +1 -1
  54. package/dist/mcp.js +1 -1
  55. package/dist/mcp.js.map +1 -1
  56. package/dist/pipelineAdapters.d.ts +1 -0
  57. package/dist/pipelineAdapters.d.ts.map +1 -1
  58. package/dist/pipelineAdapters.js +227 -4
  59. package/dist/pipelineAdapters.js.map +1 -1
  60. package/dist/styles/tailwindProbe.d.ts +8 -0
  61. package/dist/styles/tailwindProbe.d.ts.map +1 -1
  62. package/dist/styles/tailwindProbe.js +11 -1
  63. package/dist/styles/tailwindProbe.js.map +1 -1
  64. package/dist/types/crossLanguage.d.ts +1 -0
  65. package/dist/types/crossLanguage.d.ts.map +1 -1
  66. package/dist/types.d.ts +7 -0
  67. package/dist/types.d.ts.map +1 -1
  68. package/dist/types.js.map +1 -1
  69. package/package.json +3 -2
  70. package/plugin/.claude-plugin/plugin.json +1 -1
  71. package/plugin/skills/code-auditor/SKILL-RULE-KINDS.md +4 -2
  72. package/plugin/skills/code-auditor/SKILL.md +19 -11
@@ -10,7 +10,7 @@
10
10
  "name": "code-auditor",
11
11
  "source": "./plugin",
12
12
  "description": "Diff-scoped code quality auditing on every edit. Indexes your codebase, enforces invariants, and feeds violations back to the agent so fixes happen inline.",
13
- "version": "3.6.0",
13
+ "version": "3.7.0",
14
14
  "author": {
15
15
  "name": "Ben Hammond"
16
16
  },
package/CHANGELOG.md CHANGED
@@ -2,6 +2,37 @@
2
2
 
3
3
  All notable changes to the Code Auditor MCP project.
4
4
 
5
+ ## [3.7.0] — 2026-09-06
6
+
7
+ ### Hardcoded credentials — new critical, gating analyzer
8
+ A new analyzer flags credentials embedded in source rather than read from
9
+ environment variables. It gates at `critical` out of the box.
10
+
11
+ - **`hardcoded-credential`** — pattern-matches connection strings, API-key
12
+ formats, and credential-like string literals; fires `critical` and blocks the
13
+ edit gate.
14
+ - **All-secret-args preserved** — `checkCredentialCall` keeps its
15
+ all-secret-arguments behavior so a call passing only secret values is not
16
+ misclassified.
17
+
18
+ ### Analyzer hardening
19
+ - **`unreferenced-module` promoted** — `suggestion` → `warning`, so dead modules
20
+ now surface at a gating severity.
21
+ - **`dry` quieter on fluent chains** — the default-on similar-expression check no
22
+ longer fires on fluent library chains (`.map().filter().reduce()`).
23
+ - **`dependency-graph` orphan fix** — receiver-dispatched methods are no longer
24
+ flagged as orphans; only genuinely unreferenced nodes report.
25
+ - **`documentation` noise cut** — default findings drop 1,044 → 159 on the
26
+ hhra-org corpus by suppressing low-value defaults.
27
+ - **Self-audit debt cleared** — the new analyzer code passes code-auditor's own
28
+ gate.
29
+
30
+ ### Release hygiene
31
+ - **`.code-auditor-version` and the repo-root skills copy are dropped** — the
32
+ plugin reads its version from the single source of truth, `package.json`.
33
+ - **`verify:close` fails fast on low disk** — the gate checks free space before
34
+ running, instead of failing mid-run.
35
+
5
36
  ## [3.6.0] — 2026-09-05
6
37
 
7
38
  ### Enforcement — Spec 45 reverts the unauthorized narrowings
@@ -1 +1 @@
1
- {"version":3,"file":"DependencyGraphBuilder.d.ts","sourceRoot":"","sources":["../../../src/analyzers/cross-language/DependencyGraphBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DependencyGraphBuilder.d.ts","sourceRoot":"","sources":["../../../src/analyzers/cross-language/DependencyGraphBuilder.ts"],"names":[],"mappings":"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"}
@@ -284,6 +284,16 @@ class DependencyGraphBuilderCore {
284
284
  // interfaces on a corpus whose actual signal was ~139 functions.
285
285
  if (node.type === 'interface' || node.type === 'struct')
286
286
  return false;
287
+ // Methods are invoked via `this.` / receiver / prototype dispatch, which a
288
+ // name-only call graph cannot model. Class-prefixed names (`Client.formatter`,
289
+ // Go `Foo.Bar`) never resolve — the reference resolver matches a bare callee
290
+ // (`formatter`) against the full entity name. Object-literal methods
291
+ // (`{ renameColumn() {} }` merged onto a prototype) carry a bare name and so
292
+ // evade the `.` guard, but are dispatched the same way; `isMethod` covers
293
+ // both. "No call edges" is therefore not evidence of dead code for a method —
294
+ // treating it as such produced 857 false orphans on knex alone (97% of 885).
295
+ if (node.isMethod || node.name.includes('.'))
296
+ return false;
287
297
  if (connectedNodes.has(node.id))
288
298
  return false;
289
299
  if (node.exported)
@@ -379,7 +389,8 @@ class DependencyGraphBuilderTraversal extends DependencyGraphBuilderCore {
379
389
  file: entity.file,
380
390
  weight: this.calculateNodeWeight(entity),
381
391
  cluster: this.determineCluster(entity),
382
- exported: entity.visibility === 'public' || entity.metadata?.isExported === true
392
+ exported: entity.visibility === 'public' || entity.metadata?.isExported === true,
393
+ isMethod: entity.metadata?.isMethod === true
383
394
  }));
384
395
  }
385
396
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"DependencyGraphBuilder.js","sourceRoot":"","sources":["../../../src/analyzers/cross-language/DependencyGraphBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DependencyGraphBuilder.js","sourceRoot":"","sources":["../../../src/analyzers/cross-language/DependencyGraphBuilder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ruleRegistry.d.ts","sourceRoot":"","sources":["../../src/analyzers/ruleRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,MAAM,WAAW,iBAAiB;IAChC,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,MAAM,GAAG,cAAc,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC/F;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB;;;;;;OAMG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB;;;;;OAKG;IACH,OAAO,EAAE,WAAW,CAAC;CACtB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,UAAU;IACzB,+FAA+F;IAC/F,IAAI,EAAE,MAAM,CAAC;IACb,kDAAkD;IAClD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4FAA4F;IAC5F,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,8DAA8D;AAC9D,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CA2mDrE,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,MAAM,EAEnC,CAAC;AAET;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,MAAM,EAMlD,CAAC;AAEF;;;GAGG;AACH,UAAU,aAAa;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,aAAa,GAAG,QAAQ,CAAC,iBAAiB,CAAC,GAAG,SAAS,CAQ/F"}
1
+ {"version":3,"file":"ruleRegistry.d.ts","sourceRoot":"","sources":["../../src/analyzers/ruleRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,MAAM,WAAW,iBAAiB;IAChC,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,MAAM,GAAG,cAAc,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC/F;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB;;;;;;OAMG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB;;;;;OAKG;IACH,OAAO,EAAE,WAAW,CAAC;CACtB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,UAAU;IACzB,+FAA+F;IAC/F,IAAI,EAAE,MAAM,CAAC;IACb,kDAAkD;IAClD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4FAA4F;IAC5F,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,8DAA8D;AAC9D,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CA+uDrE,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,MAAM,EAEnC,CAAC;AAET;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,MAAM,EAMlD,CAAC;AAEF;;;GAGG;AACH,UAAU,aAAa;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,aAAa,GAAG,QAAQ,CAAC,iBAAiB,CAAC,GAAG,SAAS,CAQ/F"}
@@ -66,9 +66,11 @@ export const RULE_REGISTRY = {
66
66
  field: 'rule',
67
67
  input: ['files'],
68
68
  resolvable: true,
69
- message: 'Function "{name}" has {count} {metric}, exceeding the maximum of {max}. Break it down.',
69
+ message: 'Function "{name}" mixes unrelated responsibilities. Split it into one function per concern.',
70
70
  docs: 'solid/single-responsibility',
71
- thresholds: ['maxParametersPerMethod', 'maxLinesPerMethod'],
71
+ // #131: the mixed-concern check has no tunable threshold. The size proxies
72
+ // (line count, parameter count) moved to function-length / parameter-count.
73
+ thresholds: [],
72
74
  samples: {
73
75
  valid: [
74
76
  { code: 'function parse(input) {\n return input.trim().split(",");\n}', nearMiss: true },
@@ -81,6 +83,46 @@ export const RULE_REGISTRY = {
81
83
  ],
82
84
  },
83
85
  },
86
+ 'function-length': {
87
+ analyzer: 'solid',
88
+ field: 'rule',
89
+ input: ['files'],
90
+ resolvable: true,
91
+ message: 'Function "{name}" has {lines} lines, exceeding the maximum of {max}. Consider breaking it down.',
92
+ docs: 'function-length',
93
+ thresholds: ['maxLinesPerMethod'],
94
+ samples: {
95
+ valid: [
96
+ { code: 'function short(x) {\n const a = transform(x);\n const b = validate(a);\n return b;\n}', nearMiss: true },
97
+ ],
98
+ invalid: [
99
+ {
100
+ code: 'function long(input) {\n let a = step1(input);\n let b = step2(a);\n let c = step3(b);\n let d = step4(c);\n let e = step5(d);\n let f = step6(e);\n let g = step7(f);\n let h = step8(g);\n let i = step9(h);\n let j = step10(i);\n let k = step11(j);\n let l = step12(k);\n let m = step13(l);\n let n = step14(m);\n let o = step15(n);\n let p = step16(o);\n let q = step17(p);\n let r = step18(q);\n let s = step19(r);\n let t = step20(s);\n let u = step21(t);\n let v = step22(u);\n let w = step23(v);\n let x = step24(w);\n let y = step25(x);\n let z = step26(y);\n let aa = step27(z);\n let ab = step28(aa);\n let ac = step29(ab);\n let ad = step30(ac);\n let ae = step31(ad);\n let af = step32(ae);\n let ag = step33(af);\n let ah = step34(ag);\n let ai = step35(ah);\n let aj = step36(ai);\n let ak = step37(aj);\n let al = step38(ak);\n let am = step39(al);\n let an = step40(am);\n let ao = step41(an);\n let ap = step42(ao);\n let aq = step43(ap);\n let ar = step44(aq);\n let as = step45(ar);\n let at = step46(as);\n let au = step47(at);\n let av = step48(au);\n let aw = step49(av);\n let ax = step50(aw);\n let ay = step51(ax);\n return ay;\n}',
101
+ resolution: { action: 'break-down-function', summary: 'Break "long" into smaller functions, extracting named helper blocks for each pipeline stage.', symbols: ['long'] },
102
+ },
103
+ ],
104
+ },
105
+ },
106
+ 'parameter-count': {
107
+ analyzer: 'solid',
108
+ field: 'rule',
109
+ input: ['files'],
110
+ resolvable: true,
111
+ message: 'Function "{name}" has {params} parameters, exceeding the maximum of {max}. Consider using an options object.',
112
+ docs: 'parameter-count',
113
+ thresholds: ['maxParametersPerMethod'],
114
+ samples: {
115
+ valid: [
116
+ { code: 'function combine(a, b, c, d) {\n return a + b + c + d;\n}', nearMiss: true },
117
+ ],
118
+ invalid: [
119
+ {
120
+ code: 'function combine(a, b, c, d, e) {\n return a + b + c + d + e;\n}',
121
+ resolution: { action: 'bundle-params', summary: 'Bundle the 5 parameters of "combine" into an options object.', symbols: ['a', 'b', 'c', 'd', 'e'] },
122
+ },
123
+ ],
124
+ },
125
+ },
84
126
  'solid/interface-segregation': {
85
127
  analyzer: 'solid',
86
128
  field: 'rule',
@@ -171,6 +213,42 @@ export const RULE_REGISTRY = {
171
213
  ],
172
214
  },
173
215
  },
216
+ 'dry/similar-expression': {
217
+ analyzer: 'dry',
218
+ field: 'rule',
219
+ configGate: 'checkExpressionSimilarity',
220
+ input: ['files'],
221
+ resolvable: true,
222
+ message: 'Near-identical expression detected ({shared} shared {unit}: {names}). First occurrence at {file}:{line}.',
223
+ docs: 'dry/similar-expression',
224
+ // #133: on by default. The floor (minShapeNames) counts the field/method
225
+ // names two fragments must share. Fluent library/builder chains (query and
226
+ // schema builders, Zod validators, commander, promises, DOM and stdlib
227
+ // method chains) are excluded and object literals must target the same
228
+ // identifier, so default-on stays quiet on idiomatic API surface and schema
229
+ // literals while still firing on the `resultSummary` object built twice.
230
+ thresholds: ['minShapeNames'],
231
+ samples: {
232
+ valid: [
233
+ {
234
+ // Same target assigned twice, but the field lists share nothing — a
235
+ // "built twice" shape that is not actually near-identical.
236
+ code: 'const state = {};\nstate.summary = { a: 1, b: 2, c: 3, d: 4 };\nstate.summary = { e: 5, f: 6, g: 7, h: 8 };',
237
+ nearMiss: true,
238
+ },
239
+ ],
240
+ invalid: [
241
+ {
242
+ code: 'const info = {};\ninfo.resultSummary = { completedAt: now, tables: t, tableCounts: tc, stagingCounts: sc, steps: st };\ninfo.resultSummary = { completedAt: now, tables: t, tableCounts: tc, stagingCounts: sc, steps: st, durationMs: d };',
243
+ resolution: {
244
+ action: 'extract-shared-expression',
245
+ summary: 'Extract the shared field list (completedAt, tables, tableCounts, stagingCounts, steps) into a shared builder or constant both sites use.',
246
+ symbols: ['info.resultSummary'],
247
+ },
248
+ },
249
+ ],
250
+ },
251
+ },
174
252
  'duplicate-string-literal': {
175
253
  analyzer: 'dry',
176
254
  field: 'rule',
@@ -313,6 +391,42 @@ export const RULE_REGISTRY = {
313
391
  ],
314
392
  },
315
393
  },
394
+ // ── secrets (UniversalSecretsAnalyzer) ──────────────────────────────────
395
+ 'hardcoded-secret': {
396
+ analyzer: 'secrets',
397
+ field: 'rule',
398
+ configGate: 'checkHardcodedSecrets',
399
+ input: ['files'],
400
+ resolvable: true,
401
+ message: 'Hardcoded secret detected: a credential value is embedded in source. Move it to an environment variable or secret store.',
402
+ docs: 'hardcoded-secret',
403
+ thresholds: [],
404
+ samples: {
405
+ valid: [
406
+ // Placeholder value — named like a secret, but the value is a known placeholder.
407
+ { code: "const apiKey = 'your-api-key';", nearMiss: true },
408
+ // Env var reference — not a string literal, so never a candidate.
409
+ { code: 'const apiKey = process.env.API_KEY;', nearMiss: true },
410
+ ],
411
+ invalid: [
412
+ {
413
+ code: "const password = 'hunter2Secret9';",
414
+ resolution: {
415
+ action: 'remove-hardcoded-secret',
416
+ summary: 'Replace the hardcoded "password" credential with a reference to an environment variable or secret store (e.g. process.env.PASSWORD).',
417
+ symbols: ['password'],
418
+ },
419
+ },
420
+ {
421
+ code: "await page.type('#password', 'vyy8AUVvish34Fq');",
422
+ resolution: {
423
+ action: 'remove-hardcoded-secret',
424
+ summary: 'Replace the hardcoded credential with a reference to an environment variable or secret store (e.g. process.env.SECRET).',
425
+ },
426
+ },
427
+ ],
428
+ },
429
+ },
316
430
  // ── documentation (UniversalDocumentationAnalyzer) ─────────────────────
317
431
  'file-documentation': {
318
432
  analyzer: 'documentation',
@@ -1287,6 +1401,23 @@ export const RULE_REGISTRY = {
1287
1401
  ],
1288
1402
  },
1289
1403
  },
1404
+ 'unreferenced-module': {
1405
+ analyzer: 'dependency-graph',
1406
+ field: 'type',
1407
+ input: ['cross-language-entities'],
1408
+ resolvable: false,
1409
+ message: 'Module is not imported by any other file and is not a framework entry point — dead code candidate.',
1410
+ docs: 'unreferenced-module',
1411
+ thresholds: [],
1412
+ samples: {
1413
+ valid: [
1414
+ { code: 'export function used() {}', nearMiss: true },
1415
+ ],
1416
+ invalid: [
1417
+ { code: '// file exports symbols but nothing imports it' },
1418
+ ],
1419
+ },
1420
+ },
1290
1421
  // ── styles (UniversalStylesAnalyzer) ─────────────────────────────────────
1291
1422
  'styles/value-drift': {
1292
1423
  analyzer: 'styles',
@@ -1 +1 @@
1
- {"version":3,"file":"ruleRegistry.js","sourceRoot":"","sources":["../../src/analyzers/ruleRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ruleRegistry.js","sourceRoot":"","sources":["../../src/analyzers/ruleRegistry.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,20 @@ export interface DRYAnalyzerConfig {
44
44
  checkStrings?: boolean;
45
45
  /** R4.2: Enables dry/structural-similarity analysis. Default false. */
46
46
  checkStructuralSimilarity?: boolean;
47
+ /**
48
+ * #132: Enables dry/similar-expression analysis — near-identical object
49
+ * literals and fluent call chains that share a field/method sequence. Default
50
+ * false: query-builder chains are structurally similar by design, so this is
51
+ * opt-in like structural-similarity.
52
+ */
53
+ checkExpressionSimilarity?: boolean;
54
+ /**
55
+ * #132: Minimum number of field/method names two fragments must share (as a
56
+ * common subsequence) before they count as "near-identical". Default 4, so a
57
+ * 3-method chain (.select().from().where()) never fires, but a 4-method chain
58
+ * (.update().set().where().returning()) and the 5-field resultSummary do.
59
+ */
60
+ minShapeNames?: number;
47
61
  ignoreComments?: boolean;
48
62
  ignoreWhitespace?: boolean;
49
63
  /** Full function index (all functions in codebase) for cross-file duplicate detection in scoped audits */
@@ -77,6 +91,21 @@ export declare class UniversalDRYAnalyzer extends UniversalAnalyzer {
77
91
  * Report token-kind-identical duplicates (dry/structural-similarity, suggestion).
78
92
  */
79
93
  private reportStructuralDuplicates;
94
+ /**
95
+ * Report near-identical expression shapes (dry/similar-expression, suggestion).
96
+ *
97
+ * Two fragments are "near-identical" when their field/method-name sequence
98
+ * shares a common subsequence of at least `minShapeNames` names — the same
99
+ * `resultSummary` object built twice, the same `.update().set().where()`
100
+ * chain repeated across switch arms. Each later fragment is reported at most
101
+ * once, against the earliest fragment it resembles.
102
+ */
103
+ private reportExpressionSimilarities;
104
+ /**
105
+ * Build the `dry/similar-expression` violation for `fragment` (the later
106
+ * fragment) resembling `first` (the earliest).
107
+ */
108
+ private buildSimilarityViolation;
80
109
  /**
81
110
  * Report blocks that duplicate a function body from the full codebase index.
82
111
  * Only used in scoped (changed-file) audits.
@@ -1 +1 @@
1
- {"version":3,"file":"UniversalDRYAnalyzer.d.ts","sourceRoot":"","sources":["../../../src/analyzers/universal/UniversalDRYAnalyzer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,KAAK,EAAE,GAAG,EAAE,eAAe,EAAW,MAAM,0BAA0B,CAAC;AAG9E;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,0EAA0E;IAC1E,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,UAAU,EAAE,MAAM,CAAC;IACnB,2DAA2D;IAC3D,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,0GAA0G;IAC1G,iBAAiB,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACxC;AAED,eAAO,MAAM,kBAAkB,EAAE,iBAYhC,CAAC;AA4WF;;;;;;;GAOG;AACH,qBAAa,oBAAqB,SAAQ,iBAAiB;IACzD,QAAQ,CAAC,IAAI,SAAS;IACtB,QAAQ,CAAC,WAAW,kDAAkD;IACtE,QAAQ,CAAC,QAAQ,qBAAqB;IAEtC,+DAA+D;IAC/D,OAAO,CAAC,gBAAgB,CAAqB;IAE7C,mFAAmF;IACnF,OAAO,CAAC,SAAS,CAAqB;IAEtC,6DAA6D;IAC7D,IAAI,QAAQ,IAAI,WAAW,EAAE,CAE5B;IAED,UAAgB,UAAU,CACxB,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,iBAAiB,EACzB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,SAAS,EAAE,CAAC,CAsCtB;IAED;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA0C7B;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA4ClC;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAsCjC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IA2BhC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA0C7B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA8B7B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;OAEG;IACH,OAAO,CAAC,eAAe;IAIvB;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAsBhB;;;;;;;OAOG;IACG,OAAO,CACX,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,GAAE,GAAQ,EAChB,OAAO,GAAE,GAAQ,GAChB,OAAO,CAAC,OAAO,gBAAgB,EAAE,cAAc,CAAC,CAIlD;CACF"}
1
+ {"version":3,"file":"UniversalDRYAnalyzer.d.ts","sourceRoot":"","sources":["../../../src/analyzers/universal/UniversalDRYAnalyzer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,KAAK,EAAE,GAAG,EAAE,eAAe,EAAW,MAAM,0BAA0B,CAAC;AAG9E;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,0EAA0E;IAC1E,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,UAAU,EAAE,MAAM,CAAC;IACnB,2DAA2D;IAC3D,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC;;;;;OAKG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,0GAA0G;IAC1G,iBAAiB,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACxC;AAED,eAAO,MAAM,kBAAkB,EAAE,iBAmChC,CAAC;AAspBF;;;;;;;GAOG;AACH,qBAAa,oBAAqB,SAAQ,iBAAiB;IACzD,QAAQ,CAAC,IAAI,SAAS;IACtB,QAAQ,CAAC,WAAW,kDAAkD;IACtE,QAAQ,CAAC,QAAQ,qBAAqB;IAEtC,+DAA+D;IAC/D,OAAO,CAAC,gBAAgB,CAAqB;IAE7C,mFAAmF;IACnF,OAAO,CAAC,SAAS,CAAqB;IAEtC,6DAA6D;IAC7D,IAAI,QAAQ,IAAI,WAAW,EAAE,CAE5B;IAED,UAAgB,UAAU,CACxB,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,iBAAiB,EACzB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,SAAS,EAAE,CAAC,CA2CtB;IAED;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA0C7B;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA4ClC;;;;;;;;OAQG;IACH,OAAO,CAAC,4BAA4B;IA8BpC;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAmChC;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAsCjC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IA2BhC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA0C7B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA8B7B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;OAEG;IACH,OAAO,CAAC,eAAe;IAIvB;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAsBhB;;;;;;;OAOG;IACG,OAAO,CACX,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,GAAE,GAAQ,EAChB,OAAO,GAAE,GAAQ,GAChB,OAAO,CAAC,OAAO,gBAAgB,EAAE,cAAc,CAAC,CAIlD;CACF"}