code-auditor-mcp 3.4.11 → 3.4.13

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 (254) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/CHANGELOG.md +119 -1
  3. package/dist/analyzers/__verify_self_probe.d.ts +2 -0
  4. package/dist/analyzers/__verify_self_probe.d.ts.map +1 -0
  5. package/dist/analyzers/__verify_self_probe.js +5 -0
  6. package/dist/analyzers/__verify_self_probe.js.map +1 -0
  7. package/dist/analyzers/analyzerUtils.d.ts +34 -1
  8. package/dist/analyzers/analyzerUtils.d.ts.map +1 -1
  9. package/dist/analyzers/analyzerUtils.js +61 -22
  10. package/dist/analyzers/analyzerUtils.js.map +1 -1
  11. package/dist/analyzers/cross-language/APIContractAnalyzer.d.ts +18 -23
  12. package/dist/analyzers/cross-language/APIContractAnalyzer.d.ts.map +1 -1
  13. package/dist/analyzers/cross-language/APIContractAnalyzer.js +198 -186
  14. package/dist/analyzers/cross-language/APIContractAnalyzer.js.map +1 -1
  15. package/dist/analyzers/cross-language/DependencyGraphBuilder.d.ts +78 -55
  16. package/dist/analyzers/cross-language/DependencyGraphBuilder.d.ts.map +1 -1
  17. package/dist/analyzers/cross-language/DependencyGraphBuilder.js +244 -243
  18. package/dist/analyzers/cross-language/DependencyGraphBuilder.js.map +1 -1
  19. package/dist/analyzers/cross-language/SchemaValidator.d.ts +27 -37
  20. package/dist/analyzers/cross-language/SchemaValidator.d.ts.map +1 -1
  21. package/dist/analyzers/cross-language/SchemaValidator.js +314 -275
  22. package/dist/analyzers/cross-language/SchemaValidator.js.map +1 -1
  23. package/dist/analyzers/crossDomain/CrossDomainAnalyzer.d.ts +17 -46
  24. package/dist/analyzers/crossDomain/CrossDomainAnalyzer.d.ts.map +1 -1
  25. package/dist/analyzers/crossDomain/CrossDomainAnalyzer.js +620 -523
  26. package/dist/analyzers/crossDomain/CrossDomainAnalyzer.js.map +1 -1
  27. package/dist/analyzers/documentationAnalyzer.d.ts +7 -2
  28. package/dist/analyzers/documentationAnalyzer.d.ts.map +1 -1
  29. package/dist/analyzers/documentationAnalyzer.js +259 -198
  30. package/dist/analyzers/documentationAnalyzer.js.map +1 -1
  31. package/dist/analyzers/invariantsAnalyzer.d.ts.map +1 -1
  32. package/dist/analyzers/invariantsAnalyzer.js +59 -46
  33. package/dist/analyzers/invariantsAnalyzer.js.map +1 -1
  34. package/dist/analyzers/orm/adapterRegistry.d.ts +10 -0
  35. package/dist/analyzers/orm/adapterRegistry.d.ts.map +1 -1
  36. package/dist/analyzers/orm/adapterRegistry.js +10 -0
  37. package/dist/analyzers/orm/adapterRegistry.js.map +1 -1
  38. package/dist/analyzers/orm/drizzleAdapter.d.ts +22 -0
  39. package/dist/analyzers/orm/drizzleAdapter.d.ts.map +1 -1
  40. package/dist/analyzers/orm/drizzleAdapter.js +42 -44
  41. package/dist/analyzers/orm/drizzleAdapter.js.map +1 -1
  42. package/dist/analyzers/orm/prismaAdapter.d.ts +30 -0
  43. package/dist/analyzers/orm/prismaAdapter.d.ts.map +1 -1
  44. package/dist/analyzers/orm/prismaAdapter.js +30 -0
  45. package/dist/analyzers/orm/prismaAdapter.js.map +1 -1
  46. package/dist/analyzers/provenance.d.ts +72 -2
  47. package/dist/analyzers/provenance.d.ts.map +1 -1
  48. package/dist/analyzers/provenance.js +462 -338
  49. package/dist/analyzers/provenance.js.map +1 -1
  50. package/dist/analyzers/reactAnalyzer.d.ts +11 -0
  51. package/dist/analyzers/reactAnalyzer.d.ts.map +1 -1
  52. package/dist/analyzers/reactAnalyzer.js +188 -125
  53. package/dist/analyzers/reactAnalyzer.js.map +1 -1
  54. package/dist/analyzers/ruleRegistry.d.ts +118 -1
  55. package/dist/analyzers/ruleRegistry.d.ts.map +1 -1
  56. package/dist/analyzers/ruleRegistry.js +1717 -104
  57. package/dist/analyzers/ruleRegistry.js.map +1 -1
  58. package/dist/analyzers/ruleTiming.d.ts +54 -0
  59. package/dist/analyzers/ruleTiming.d.ts.map +1 -0
  60. package/dist/analyzers/ruleTiming.js +71 -0
  61. package/dist/analyzers/ruleTiming.js.map +1 -0
  62. package/dist/analyzers/universal/UniversalConventionsAnalyzer.d.ts +13 -0
  63. package/dist/analyzers/universal/UniversalConventionsAnalyzer.d.ts.map +1 -1
  64. package/dist/analyzers/universal/UniversalConventionsAnalyzer.js +362 -283
  65. package/dist/analyzers/universal/UniversalConventionsAnalyzer.js.map +1 -1
  66. package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts +26 -68
  67. package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts.map +1 -1
  68. package/dist/analyzers/universal/UniversalDRYAnalyzer.js +430 -391
  69. package/dist/analyzers/universal/UniversalDRYAnalyzer.js.map +1 -1
  70. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts +24 -186
  71. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts.map +1 -1
  72. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js +1081 -1061
  73. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js.map +1 -1
  74. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.d.ts +3 -49
  75. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.d.ts.map +1 -1
  76. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js +414 -340
  77. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js.map +1 -1
  78. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts +48 -5
  79. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts.map +1 -1
  80. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js +262 -134
  81. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js.map +1 -1
  82. package/dist/analyzers/universal/UniversalSchemaAnalyzer.d.ts +23 -212
  83. package/dist/analyzers/universal/UniversalSchemaAnalyzer.d.ts.map +1 -1
  84. package/dist/analyzers/universal/UniversalSchemaAnalyzer.js +139 -1518
  85. package/dist/analyzers/universal/UniversalSchemaAnalyzer.js.map +1 -1
  86. package/dist/analyzers/universal/UniversalStylesAnalyzer.d.ts +78 -79
  87. package/dist/analyzers/universal/UniversalStylesAnalyzer.d.ts.map +1 -1
  88. package/dist/analyzers/universal/UniversalStylesAnalyzer.js +613 -472
  89. package/dist/analyzers/universal/UniversalStylesAnalyzer.js.map +1 -1
  90. package/dist/analyzers/universal/schema/codeAnalysis.d.ts +307 -0
  91. package/dist/analyzers/universal/schema/codeAnalysis.d.ts.map +1 -0
  92. package/dist/analyzers/universal/schema/codeAnalysis.js +965 -0
  93. package/dist/analyzers/universal/schema/codeAnalysis.js.map +1 -0
  94. package/dist/analyzers/universal/schema/config.d.ts +31 -0
  95. package/dist/analyzers/universal/schema/config.d.ts.map +1 -0
  96. package/dist/analyzers/universal/schema/config.js +57 -0
  97. package/dist/analyzers/universal/schema/config.js.map +1 -0
  98. package/dist/analyzers/universal/schema/discovery.d.ts +167 -0
  99. package/dist/analyzers/universal/schema/discovery.d.ts.map +1 -0
  100. package/dist/analyzers/universal/schema/discovery.js +616 -0
  101. package/dist/analyzers/universal/schema/discovery.js.map +1 -0
  102. package/dist/analyzers/universal/schema/jsonSchema.d.ts +27 -0
  103. package/dist/analyzers/universal/schema/jsonSchema.d.ts.map +1 -0
  104. package/dist/analyzers/universal/schema/jsonSchema.js +368 -0
  105. package/dist/analyzers/universal/schema/jsonSchema.js.map +1 -0
  106. package/dist/analyzers/universal/schema/migrations.d.ts +90 -0
  107. package/dist/analyzers/universal/schema/migrations.d.ts.map +1 -0
  108. package/dist/analyzers/universal/schema/migrations.js +238 -0
  109. package/dist/analyzers/universal/schema/migrations.js.map +1 -0
  110. package/dist/analyzers/universal/schema/types.d.ts +131 -0
  111. package/dist/analyzers/universal/schema/types.d.ts.map +1 -0
  112. package/dist/analyzers/universal/schema/types.js +10 -0
  113. package/dist/analyzers/universal/schema/types.js.map +1 -0
  114. package/dist/analyzers/universal/schema/violations.d.ts +44 -0
  115. package/dist/analyzers/universal/schema/violations.d.ts.map +1 -0
  116. package/dist/analyzers/universal/schema/violations.js +54 -0
  117. package/dist/analyzers/universal/schema/violations.js.map +1 -0
  118. package/dist/auditRunner.d.ts.map +1 -1
  119. package/dist/auditRunner.js +101 -39
  120. package/dist/auditRunner.js.map +1 -1
  121. package/dist/cli.js +348 -40
  122. package/dist/cli.js.map +1 -1
  123. package/dist/config/configLoader.d.ts.map +1 -1
  124. package/dist/config/configLoader.js +9 -7
  125. package/dist/config/configLoader.js.map +1 -1
  126. package/dist/config/defaults.d.ts +12 -3
  127. package/dist/config/defaults.d.ts.map +1 -1
  128. package/dist/config/defaults.js +15 -5
  129. package/dist/config/defaults.js.map +1 -1
  130. package/dist/config/effectiveConfig.d.ts +75 -0
  131. package/dist/config/effectiveConfig.d.ts.map +1 -0
  132. package/dist/config/effectiveConfig.js +213 -0
  133. package/dist/config/effectiveConfig.js.map +1 -0
  134. package/dist/config/pathProfiles.d.ts +7 -4
  135. package/dist/config/pathProfiles.d.ts.map +1 -1
  136. package/dist/config/pathProfiles.js +8 -10
  137. package/dist/config/pathProfiles.js.map +1 -1
  138. package/dist/config/thresholdRationales.d.ts +45 -0
  139. package/dist/config/thresholdRationales.d.ts.map +1 -0
  140. package/dist/config/thresholdRationales.js +67 -0
  141. package/dist/config/thresholdRationales.js.map +1 -0
  142. package/dist/conventions/conventionMiner.d.ts.map +1 -1
  143. package/dist/conventions/conventionMiner.js +6 -2
  144. package/dist/conventions/conventionMiner.js.map +1 -1
  145. package/dist/enforcement/diffGate.d.ts +55 -0
  146. package/dist/enforcement/diffGate.d.ts.map +1 -0
  147. package/dist/enforcement/diffGate.js +136 -0
  148. package/dist/enforcement/diffGate.js.map +1 -0
  149. package/dist/enforcement/gate.d.ts +36 -0
  150. package/dist/enforcement/gate.d.ts.map +1 -0
  151. package/dist/enforcement/gate.js +72 -0
  152. package/dist/enforcement/gate.js.map +1 -0
  153. package/dist/enforcement/suppressions.d.ts +41 -0
  154. package/dist/enforcement/suppressions.d.ts.map +1 -0
  155. package/dist/enforcement/suppressions.js +170 -0
  156. package/dist/enforcement/suppressions.js.map +1 -0
  157. package/dist/fingerprint.d.ts.map +1 -1
  158. package/dist/fingerprint.js +4 -1
  159. package/dist/fingerprint.js.map +1 -1
  160. package/dist/grammars/tree-sitter-scss.wasm +0 -0
  161. package/dist/invariants/ruleEngine.d.ts +3 -4
  162. package/dist/invariants/ruleEngine.d.ts.map +1 -1
  163. package/dist/invariants/ruleEngine.js +2 -2
  164. package/dist/invariants/ruleEngine.js.map +1 -1
  165. package/dist/languages/LanguageOrchestrator.d.ts +14 -0
  166. package/dist/languages/LanguageOrchestrator.d.ts.map +1 -1
  167. package/dist/languages/LanguageOrchestrator.js +93 -55
  168. package/dist/languages/LanguageOrchestrator.js.map +1 -1
  169. package/dist/languages/LanguageRegistry.d.ts +8 -0
  170. package/dist/languages/LanguageRegistry.d.ts.map +1 -1
  171. package/dist/languages/LanguageRegistry.js +8 -0
  172. package/dist/languages/LanguageRegistry.js.map +1 -1
  173. package/dist/languages/RuntimeManager.d.ts +82 -60
  174. package/dist/languages/RuntimeManager.d.ts.map +1 -1
  175. package/dist/languages/RuntimeManager.js +404 -349
  176. package/dist/languages/RuntimeManager.js.map +1 -1
  177. package/dist/languages/UniversalAnalyzer.d.ts +51 -6
  178. package/dist/languages/UniversalAnalyzer.d.ts.map +1 -1
  179. package/dist/languages/UniversalAnalyzer.js +127 -88
  180. package/dist/languages/UniversalAnalyzer.js.map +1 -1
  181. package/dist/languages/adapterBridge.d.ts +36 -0
  182. package/dist/languages/adapterBridge.d.ts.map +1 -1
  183. package/dist/languages/adapterBridge.js +89 -35
  184. package/dist/languages/adapterBridge.js.map +1 -1
  185. package/dist/languages/go/GoAdapter.d.ts +66 -23
  186. package/dist/languages/go/GoAdapter.d.ts.map +1 -1
  187. package/dist/languages/go/GoAdapter.js +553 -474
  188. package/dist/languages/go/GoAdapter.js.map +1 -1
  189. package/dist/languages/tree-sitter/TreeSitterCssAdapter.d.ts +38 -9
  190. package/dist/languages/tree-sitter/TreeSitterCssAdapter.d.ts.map +1 -1
  191. package/dist/languages/tree-sitter/TreeSitterCssAdapter.js +111 -74
  192. package/dist/languages/tree-sitter/TreeSitterCssAdapter.js.map +1 -1
  193. package/dist/languages/tree-sitter/converter.d.ts +18 -0
  194. package/dist/languages/tree-sitter/converter.d.ts.map +1 -1
  195. package/dist/languages/tree-sitter/converter.js +18 -0
  196. package/dist/languages/tree-sitter/converter.js.map +1 -1
  197. package/dist/languages/tree-sitter/parser.d.ts +39 -2
  198. package/dist/languages/tree-sitter/parser.d.ts.map +1 -1
  199. package/dist/languages/tree-sitter/parser.js +95 -12
  200. package/dist/languages/tree-sitter/parser.js.map +1 -1
  201. package/dist/languages/types.d.ts +67 -2
  202. package/dist/languages/types.d.ts.map +1 -1
  203. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.d.ts +253 -62
  204. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.d.ts.map +1 -1
  205. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js +1461 -791
  206. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js.map +1 -1
  207. package/dist/mcp-tools/whitelistTools.d.ts +1 -1
  208. package/dist/mcp-tools-shared.d.ts.map +1 -1
  209. package/dist/mcp-tools-shared.js +1 -0
  210. package/dist/mcp-tools-shared.js.map +1 -1
  211. package/dist/mcpAuditJobs.d.ts.map +1 -1
  212. package/dist/mcpAuditJobs.js +1 -0
  213. package/dist/mcpAuditJobs.js.map +1 -1
  214. package/dist/pipeline.d.ts +30 -1
  215. package/dist/pipeline.d.ts.map +1 -1
  216. package/dist/pipeline.js +527 -203
  217. package/dist/pipeline.js.map +1 -1
  218. package/dist/pipelineAdapters.d.ts +5 -12
  219. package/dist/pipelineAdapters.d.ts.map +1 -1
  220. package/dist/pipelineAdapters.js +175 -100
  221. package/dist/pipelineAdapters.js.map +1 -1
  222. package/dist/presets/presets.d.ts +54 -0
  223. package/dist/presets/presets.d.ts.map +1 -0
  224. package/dist/presets/presets.js +181 -0
  225. package/dist/presets/presets.js.map +1 -0
  226. package/dist/reporting/sarifReportGenerator.d.ts.map +1 -1
  227. package/dist/reporting/sarifReportGenerator.js +0 -2
  228. package/dist/reporting/sarifReportGenerator.js.map +1 -1
  229. package/dist/ruleAliases.d.ts +67 -0
  230. package/dist/ruleAliases.d.ts.map +1 -0
  231. package/dist/ruleAliases.js +79 -0
  232. package/dist/ruleAliases.js.map +1 -0
  233. package/dist/styles/cssAstExtractor.d.ts +20 -5
  234. package/dist/styles/cssAstExtractor.d.ts.map +1 -1
  235. package/dist/styles/cssAstExtractor.js +247 -9
  236. package/dist/styles/cssAstExtractor.js.map +1 -1
  237. package/dist/styles/styleIndexer.js +13 -4
  238. package/dist/styles/styleIndexer.js.map +1 -1
  239. package/dist/styles/tailwindConfigLoader.d.ts +8 -6
  240. package/dist/styles/tailwindConfigLoader.d.ts.map +1 -1
  241. package/dist/styles/tailwindConfigLoader.js +61 -15
  242. package/dist/styles/tailwindConfigLoader.js.map +1 -1
  243. package/dist/styles/tailwindUtilityExpander.d.ts.map +1 -1
  244. package/dist/styles/tailwindUtilityExpander.js +13 -1
  245. package/dist/styles/tailwindUtilityExpander.js.map +1 -1
  246. package/dist/types.d.ts +201 -1
  247. package/dist/types.d.ts.map +1 -1
  248. package/dist/types.js +8 -0
  249. package/dist/types.js.map +1 -1
  250. package/package.json +7 -4
  251. package/plugin/.claude-plugin/plugin.json +1 -1
  252. package/plugin/hooks/hooks.json +1 -1
  253. package/plugin/scripts/hook-audit.sh +25 -7
  254. package/plugin/skills/code-auditor/SKILL.md +5 -5
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Spec 38 R5 — rule-ID alias map.
3
+ *
4
+ * Rule identity is baked into the baseline fingerprint
5
+ * (`buildFingerprintInput`), so renaming or removing a rule silently
6
+ * reshuffles "known" vs "new". This module is the migration path:
7
+ *
8
+ * - A **rename** records the old ID → new ID, and `canonicalRuleId()`
9
+ * reverses it (new → old) so a baseline written before the rename still
10
+ * matches after it.
11
+ * - A **removal** records a *tombstone* — `to: null` with a reason — so a
12
+ * stale reference to the dead ID reports *why* it was removed instead of
13
+ * surfacing as an unexplained resolved/known finding.
14
+ *
15
+ * Already paid for here:
16
+ * - `naming-convention` → `table-naming-convention` (rename).
17
+ * - `direct-sql` and `unknown-column` were deleted outright (tombstones).
18
+ * Each invalidated existing baselines with no migration path.
19
+ */
20
+ /**
21
+ * Retired rule IDs → their replacement or tombstone.
22
+ *
23
+ * This is the single source of truth for rule-identity migration. Adding an
24
+ * alias (or a tombstone) is a required part of renaming or removing a rule —
25
+ * the registry test fails on a prior-release rule ID absent from both
26
+ * {@link RULE_REGISTRY} and this map.
27
+ */
28
+ export const RULE_ALIASES = {
29
+ // Rename: naming-convention → table-naming-convention (schema analyzer).
30
+ // Disambiguates the schema table-naming check from conventions/naming.
31
+ 'naming-convention': {
32
+ to: 'table-naming-convention',
33
+ reason: 'Renamed to table-naming-convention to disambiguate the schema table-naming check from conventions/naming.',
34
+ },
35
+ // Tombstone: direct-sql — genuine removal, no replacement.
36
+ 'direct-sql': {
37
+ to: null,
38
+ reason: 'Removed — superseded by sql-injection-risk (taint-aware) and unfiltered-query (raw SQL without a WHERE).',
39
+ },
40
+ // Tombstone: unknown-column — genuine removal, no replacement.
41
+ 'unknown-column': {
42
+ to: null,
43
+ reason: 'Removed — column-level unknown detection never shipped; unknown-table (table-level) covers the same gap.',
44
+ },
45
+ };
46
+ /**
47
+ * Canonicalize a rule ID for fingerprinting.
48
+ *
49
+ * Maps a **new** rule ID back to the **old** ID that a pre-rename baseline
50
+ * recorded, so existing baselines survive a rename without reshuffling known
51
+ * vs new. Returns the input unchanged when no reverse mapping exists (and for
52
+ * old IDs that are already canonical).
53
+ */
54
+ export function canonicalRuleId(rule) {
55
+ if (!rule)
56
+ return rule;
57
+ for (const [oldId, alias] of Object.entries(RULE_ALIASES)) {
58
+ if (alias.to === rule)
59
+ return oldId;
60
+ }
61
+ return rule;
62
+ }
63
+ /**
64
+ * Resolve a rule ID's alias status.
65
+ *
66
+ * Returns `{ status: 'current' }` for a live ID, `{ status: 'renamed', to, reason }`
67
+ * for a renamed ID, `{ status: 'removed', reason }` for a tombstone, and
68
+ * `{ status: 'unknown' }` otherwise. Consumed by `rules-check` and
69
+ * `print-config` so a human or agent querying a retired ID sees the reason.
70
+ */
71
+ export function describeRuleId(rule) {
72
+ const alias = RULE_ALIASES[rule];
73
+ if (!alias)
74
+ return { status: 'unknown' };
75
+ if (alias.to === null)
76
+ return { status: 'removed', reason: alias.reason };
77
+ return { status: 'renamed', to: alias.to, reason: alias.reason };
78
+ }
79
+ //# sourceMappingURL=ruleAliases.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ruleAliases.js","sourceRoot":"","sources":["../src/ruleAliases.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAYH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,YAAY,GAA8B;IACrD,yEAAyE;IACzE,uEAAuE;IACvE,mBAAmB,EAAE;QACnB,EAAE,EAAE,yBAAyB;QAC7B,MAAM,EACJ,2GAA2G;KAC9G;IACD,2DAA2D;IAC3D,YAAY,EAAE;QACZ,EAAE,EAAE,IAAI;QACR,MAAM,EACJ,0GAA0G;KAC7G;IACD,+DAA+D;IAC/D,gBAAgB,EAAE;QAChB,EAAE,EAAE,IAAI;QACR,MAAM,EACJ,0GAA0G;KAC7G;CACF,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAC1D,IAAI,KAAK,CAAC,EAAE,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;IACtC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IAKzC,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACzC,IAAI,KAAK,CAAC,EAAE,KAAK,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IAC1E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;AACnE,CAAC"}
@@ -1,19 +1,28 @@
1
1
  /**
2
- * CSS AST Extractor — Spec 26 Phase 2.
2
+ * CSS/SCSS AST Extractor — Spec 26 Phase 2.
3
3
  *
4
- * Replaces regex-based CSS parsing (styleExtractor.ts extractFromCSS) with
5
- * AST-based extraction using tree-sitter-css parsed structures.
4
+ * Replaces regex-based CSS/SCSS parsing (styleExtractor.ts) with
5
+ * AST-based extraction using tree-sitter-css and tree-sitter-scss parsed structures.
6
6
  *
7
7
  * Three pure functions mirror the output of the regex extractors:
8
8
  * 1. extractDeclarationsFromCSSAst — NormalizedDeclaration[]
9
9
  * 2. extractTokensFromCSSAst — StyleToken[]
10
10
  * 3. extractClassUsageFromCSSAst — StyleClassUsage[]
11
11
  *
12
- * SCSS is NOT handled here tree-sitter-css is not an SCSS grammar.
13
- * SCSS files stay on the regex path in styleExtractor.ts.
12
+ * SCSS files are handled via tree-sitter-scss grammar which extends the CSS
13
+ * grammar. SCSS-specific node types (nesting_selector, _concatenated_identifier,
14
+ * variable, mixin_statement, include_statement) are present in the AST and
15
+ * filtered appropriately by each extraction function.
14
16
  */
15
17
  import type { AST, LanguageAdapter } from '../languages/types.js';
16
18
  import type { NormalizedDeclaration, StyleToken, StyleClassUsage } from './types.js';
19
+ /**
20
+ * Unresolved nesting count — accumulated during extraction so callers can
21
+ * report how many `&`-involved selectors could not be resolved.
22
+ */
23
+ export declare let unresolvedNestingCount: number;
24
+ /** Reset the global unresolved-nesting counter. Call before extraction. */
25
+ export declare function resetUnresolvedNestingCount(): void;
17
26
  /**
18
27
  * Extract normalized CSS declarations from a parsed CSS AST.
19
28
  *
@@ -41,6 +50,12 @@ export declare function extractTokensFromCSSAst(ast: AST, adapter: LanguageAdapt
41
50
  * Replaces the regex-based class name extraction from selectors for .css files.
42
51
  * Finds class_name nodes anywhere in the AST — each represents one CSS class
43
52
  * definition. comment nodes are typed and naturally excluded (Bug 5 fix).
53
+ *
54
+ * For SCSS: resolves &-suffix / &__element / &--modifier (BEM no-separator
55
+ * concatenation) by walking up to the parent rule_set's class_selector.
56
+ * &.modifier (chained class) and & .descendant patterns are tracked as
57
+ * unresolvable rather than registered as standalone classes — registering
58
+ * them would produce false negatives in the undefined-class detector.
44
59
  */
45
60
  export declare function extractClassUsageFromCSSAst(ast: AST, adapter: LanguageAdapter, filePath: string): StyleClassUsage[];
46
61
  //# sourceMappingURL=cssAstExtractor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cssAstExtractor.d.ts","sourceRoot":"","sources":["../../src/styles/cssAstExtractor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,GAAG,EAAW,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE3E,OAAO,KAAK,EAAE,qBAAqB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAmOrF;;;;;;;;;;;GAWG;AACH,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,qBAAqB,EAAE,CAiKzB;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,MAAM,GACf,UAAU,EAAE,CAyBd;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,MAAM,GACf,eAAe,EAAE,CA6BnB"}
1
+ {"version":3,"file":"cssAstExtractor.d.ts","sourceRoot":"","sources":["../../src/styles/cssAstExtractor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,KAAK,EAAE,GAAG,EAAW,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE3E,OAAO,KAAK,EAAE,qBAAqB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAmOrF;;;GAGG;AACH,eAAO,IAAI,sBAAsB,QAAI,CAAC;AAEtC,2EAA2E;AAC3E,wBAAgB,2BAA2B,IAAI,IAAI,CAElD;AAgOD;;;;;;;;;;;GAWG;AACH,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,qBAAqB,EAAE,CA6KzB;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,MAAM,GACf,UAAU,EAAE,CAyBd;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,MAAM,GACf,eAAe,EAAE,CA4CnB"}
@@ -1,16 +1,18 @@
1
1
  /**
2
- * CSS AST Extractor — Spec 26 Phase 2.
2
+ * CSS/SCSS AST Extractor — Spec 26 Phase 2.
3
3
  *
4
- * Replaces regex-based CSS parsing (styleExtractor.ts extractFromCSS) with
5
- * AST-based extraction using tree-sitter-css parsed structures.
4
+ * Replaces regex-based CSS/SCSS parsing (styleExtractor.ts) with
5
+ * AST-based extraction using tree-sitter-css and tree-sitter-scss parsed structures.
6
6
  *
7
7
  * Three pure functions mirror the output of the regex extractors:
8
8
  * 1. extractDeclarationsFromCSSAst — NormalizedDeclaration[]
9
9
  * 2. extractTokensFromCSSAst — StyleToken[]
10
10
  * 3. extractClassUsageFromCSSAst — StyleClassUsage[]
11
11
  *
12
- * SCSS is NOT handled here tree-sitter-css is not an SCSS grammar.
13
- * SCSS files stay on the regex path in styleExtractor.ts.
12
+ * SCSS files are handled via tree-sitter-scss grammar which extends the CSS
13
+ * grammar. SCSS-specific node types (nesting_selector, _concatenated_identifier,
14
+ * variable, mixin_statement, include_statement) are present in the AST and
15
+ * filtered appropriately by each extraction function.
14
16
  */
15
17
  import { normalizeValue, expandShorthand } from './normalizer.js';
16
18
  // ---------------------------------------------------------------------------
@@ -210,6 +212,210 @@ function wrapAsASTNode(raw) {
210
212
  };
211
213
  }
212
214
  // ---------------------------------------------------------------------------
215
+ // SCSS & Nesting Resolution
216
+ // ---------------------------------------------------------------------------
217
+ /**
218
+ * Unresolved nesting count — accumulated during extraction so callers can
219
+ * report how many `&`-involved selectors could not be resolved.
220
+ */
221
+ export let unresolvedNestingCount = 0;
222
+ /** Reset the global unresolved-nesting counter. Call before extraction. */
223
+ export function resetUnresolvedNestingCount() {
224
+ unresolvedNestingCount = 0;
225
+ }
226
+ /**
227
+ * Walk up from a class_selector to find the nearest *outer* rule_set
228
+ * (skipping past the rule_set that directly contains this class_selector),
229
+ * then resolve its class name (handling nested & recursively).
230
+ *
231
+ * Uses raw TreeSitterNode.parent to walk up the parse tree, which works
232
+ * for both adapter-discovered nodes and wrapAsASTNode-created synthetic nodes.
233
+ *
234
+ * Returns null when the class_selector has no resolvable parent (e.g. it is at
235
+ * the top level, or the parent is another &-pattern that itself cannot resolve).
236
+ */
237
+ function getParentClassName(classSelectorNode) {
238
+ let raw = classSelectorNode.raw;
239
+ // Step 1: walk up to find the containing (inner) rule_set
240
+ while (raw && raw.type !== 'rule_set') {
241
+ raw = raw.parent;
242
+ }
243
+ if (!raw || raw.type !== 'rule_set')
244
+ return null;
245
+ // Step 2: walk up FROM the inner rule_set to find the OUTER rule_set
246
+ raw = raw.parent; // block of outer rule_set, or stylesheet
247
+ while (raw && raw.type !== 'rule_set') {
248
+ raw = raw.parent;
249
+ }
250
+ if (!raw || raw.type !== 'rule_set')
251
+ return null;
252
+ // Step 3: resolve the outer rule_set's concrete class name (unwinding any
253
+ // nested `&` chains — see resolveRuleSetClassName).
254
+ return resolveRuleSetClassName(raw);
255
+ }
256
+ /**
257
+ * Resolve a rule_set's selectors to a concrete parent class name, unwinding
258
+ * nested `&` chains recursively.
259
+ *
260
+ * - A plain `.btn` selector resolves to `btn`.
261
+ * - A `&-header` selector resolves to `parent + -header` via resolveNestingSelector.
262
+ * - A bare `&` pseudo/attribute selector (`&:focus`, `&:not(...)`, `&[aria-…]`)
263
+ * has no class name of its own, so the walk continues one level up to the
264
+ * enclosing rule_set.
265
+ *
266
+ * Returns null when no concrete parent class exists at or above this rule_set.
267
+ */
268
+ function resolveRuleSetClassName(ruleSetRaw) {
269
+ const selectorsRaw = findNamedChild(ruleSetRaw, 'selectors');
270
+ if (!selectorsRaw)
271
+ return null;
272
+ // Plain or BEM-nested class_selector.
273
+ const classSelector = findNamedChild(selectorsRaw, 'class_selector');
274
+ if (classSelector) {
275
+ const hasNesting = classSelector.namedChildren.some((c) => c.type === 'nesting_selector');
276
+ if (hasNesting) {
277
+ const resolved = resolveNestingSelector(wrapAsASTNode(classSelector));
278
+ if (resolved !== null && resolved.resolvable)
279
+ return resolved.className;
280
+ return null;
281
+ }
282
+ const cn = findNamedChild(classSelector, 'class_name');
283
+ if (cn)
284
+ return cn.text;
285
+ }
286
+ // Bare `&` in a pseudo_class_selector / attribute_selector — no class name at
287
+ // this level; unwind one more rule_set.
288
+ const hasBareNesting = selectorsRaw.namedChildren.some(c => (c.type === 'pseudo_class_selector' || c.type === 'attribute_selector')
289
+ && c.namedChildren.some((cc) => cc.type === 'nesting_selector'));
290
+ if (hasBareNesting) {
291
+ let outer = ruleSetRaw.parent;
292
+ while (outer && outer.type !== 'rule_set')
293
+ outer = outer.parent;
294
+ if (outer && outer.type === 'rule_set')
295
+ return resolveRuleSetClassName(outer);
296
+ }
297
+ return null;
298
+ }
299
+ /**
300
+ * Resolve a class_selector node that contains a nesting_selector (&).
301
+ *
302
+ * Returns:
303
+ * - { className: 'form-group-header', resolvable: true } for &-suffix / &__element / &--modifier
304
+ * - { className: 'selected', resolvable: false } for &.modifier (chained class)
305
+ * - { className: 'child', resolvable: false } for & .descendant
306
+ * - null when no nesting_selector is present
307
+ *
308
+ * BEM conventions handled (no-separator concatenation):
309
+ * - &-suffix → parent + -suffix (block modifier)
310
+ * - &__element → parent + __element (BEM element)
311
+ * - &--modifier → parent + --modifier (BEM modifier)
312
+ *
313
+ * Patterns dropped as unresolvable:
314
+ * - &.modifier — chained class, can't register as standalone defined class
315
+ * - & .descendant — descendant combinator
316
+ */
317
+ function resolveNestingSelector(classSelectorNode) {
318
+ const children = classSelectorNode.children ?? [];
319
+ const hasNesting = children.some(c => c.type === 'nesting_selector');
320
+ if (!hasNesting)
321
+ return null;
322
+ // Find siblings of nesting_selector
323
+ const classNames = children.filter(c => c.type === 'class_name');
324
+ const nestedClassSelectors = children.filter(c => c.type === 'class_selector');
325
+ // Case 1: &-suffix or &__element or &--modifier or &.modifier
326
+ for (const cn of classNames) {
327
+ const raw = cn.raw.text;
328
+ // BEM no-separator concatenation: &-suffix, &__element, &--modifier
329
+ if (raw.startsWith('-') || raw.startsWith('_')) {
330
+ const parentName = getParentClassName(classSelectorNode);
331
+ if (parentName) {
332
+ return { className: parentName + raw, resolvable: true };
333
+ }
334
+ // Parent not resolvable — drop and count
335
+ unresolvedNestingCount++;
336
+ return { className: raw, resolvable: false };
337
+ }
338
+ // &.modifier — chained class, not a standalone definition
339
+ // The class name alone (e.g. "selected") is a valid class but we can't
340
+ // register it as defined just because `.parent.selected` exists.
341
+ if (raw.length > 0) {
342
+ unresolvedNestingCount++;
343
+ return { className: raw, resolvable: false };
344
+ }
345
+ }
346
+ // Case 2: & .descendant — descendant combinator
347
+ for (const nestedCS of nestedClassSelectors) {
348
+ const innerCN = nestedCS.children?.find(c => c.type === 'class_name');
349
+ if (innerCN) {
350
+ const raw = innerCN.raw.text;
351
+ unresolvedNestingCount++;
352
+ return { className: raw, resolvable: false };
353
+ }
354
+ }
355
+ // Unknown nesting pattern — drop and count
356
+ unresolvedNestingCount++;
357
+ return null;
358
+ }
359
+ /**
360
+ * Resolve `&` nesting in selector context text.
361
+ *
362
+ * When a rule_set's selectors contain nesting_selector patterns (SCSS),
363
+ * replace raw &-suffix text with the resolved parent class concatenation.
364
+ * This ensures declaration context strings are meaningful.
365
+ *
366
+ * e.g. "&-header" inside ".form-group" → "form-group-header"
367
+ * "&.selected" inside ".btn" stays "&.selected" (unresolvable chained class)
368
+ */
369
+ function resolveSelectorContext(selectorsNode, rawText) {
370
+ const children = selectorsNode.children ?? [];
371
+ const classSelectors = children.filter(c => c.type === 'class_selector');
372
+ const hasNesting = classSelectors.some(cs => (cs.children ?? []).some(cc => cc.type === 'nesting_selector'));
373
+ // Bare `&` selectors — a pseudo_class_selector / attribute_selector whose
374
+ // children include a nesting_selector (`&:focus`, `&:not(...)`, `&[aria-…]`).
375
+ // These were previously left unresolved, collapsing every nested variant into
376
+ // one raw `&…` context key.
377
+ const bareNestingSelectors = children.filter(c => (c.type === 'pseudo_class_selector' || c.type === 'attribute_selector')
378
+ && (c.children ?? []).some(cc => cc.type === 'nesting_selector'));
379
+ if (!hasNesting && bareNestingSelectors.length === 0)
380
+ return rawText;
381
+ let resolvedText = rawText;
382
+ for (const cs of classSelectors) {
383
+ const resolved = resolveNestingSelector(cs);
384
+ if (resolved !== null && resolved.resolvable) {
385
+ const csRaw = cs.raw.text;
386
+ resolvedText = resolvedText.replace(csRaw, '.' + resolved.className);
387
+ }
388
+ }
389
+ for (const bs of bareNestingSelectors) {
390
+ const parentName = getParentClassNameFromSelectors(selectorsNode);
391
+ const ns = (bs.children ?? []).find(cc => cc.type === 'nesting_selector');
392
+ if (parentName && ns) {
393
+ const nsRaw = ns.raw.text; // '&'
394
+ resolvedText = resolvedText.replace(nsRaw, '.' + parentName);
395
+ }
396
+ else {
397
+ unresolvedNestingCount++;
398
+ }
399
+ }
400
+ return resolvedText;
401
+ }
402
+ /**
403
+ * Resolve the parent class name for a bare `&` nesting selector, starting from
404
+ * the rule_set's `selectors` node (whose parent is the rule_set itself).
405
+ */
406
+ function getParentClassNameFromSelectors(selectorsNode) {
407
+ const raw = selectorsNode.raw;
408
+ const innerRuleSet = raw?.parent;
409
+ if (!innerRuleSet || innerRuleSet.type !== 'rule_set')
410
+ return null;
411
+ let outer = innerRuleSet.parent;
412
+ while (outer && outer.type !== 'rule_set')
413
+ outer = outer.parent;
414
+ if (!outer || outer.type !== 'rule_set')
415
+ return null;
416
+ return resolveRuleSetClassName(outer);
417
+ }
418
+ // ---------------------------------------------------------------------------
213
419
  // Public API
214
420
  // ---------------------------------------------------------------------------
215
421
  /**
@@ -235,15 +441,26 @@ export function extractDeclarationsFromCSSAst(ast, adapter, filePath, sourceCode
235
441
  if (!selectorsRaw)
236
442
  continue;
237
443
  const selectorsAst = wrapAsASTNode(selectorsRaw);
238
- const selector = getSelectorText(selectorsAst, sourceCode);
444
+ let selector = getSelectorText(selectorsAst, sourceCode);
239
445
  if (!selector)
240
446
  continue;
447
+ // SCSS: resolve & nesting in selector context (Bug 2 fix)
448
+ selector = resolveSelectorContext(selectorsAst, selector);
241
449
  // Get variant context from at_rule ancestors
242
450
  const variantContext = getVariantContext(ruleSet, adapter, sourceCode);
243
451
  // Find declarations inside this rule_set
244
452
  const subAST = subtreeAST(ast, ruleSet);
245
453
  const declNodes = adapter.findNodes(subAST, { type: 'declaration' });
246
454
  for (const decl of declNodes) {
455
+ // Skip declarations from nested rule_sets (SCSS nesting):
456
+ // findNodes recurses into descendant rule_sets, so outer .card
457
+ // would see declarations from inner &-header — producing wrong context.
458
+ let declAncestor = adapter.getParent(decl);
459
+ while (declAncestor && declAncestor.type !== 'rule_set') {
460
+ declAncestor = adapter.getParent(declAncestor);
461
+ }
462
+ if (declAncestor && declAncestor.raw.id !== rawNode.id)
463
+ continue;
247
464
  const raw = decl.raw;
248
465
  const pv = getPropertyAndValue(raw);
249
466
  if (!pv)
@@ -408,6 +625,12 @@ export function extractTokensFromCSSAst(ast, adapter, filePath) {
408
625
  * Replaces the regex-based class name extraction from selectors for .css files.
409
626
  * Finds class_name nodes anywhere in the AST — each represents one CSS class
410
627
  * definition. comment nodes are typed and naturally excluded (Bug 5 fix).
628
+ *
629
+ * For SCSS: resolves &-suffix / &__element / &--modifier (BEM no-separator
630
+ * concatenation) by walking up to the parent rule_set's class_selector.
631
+ * &.modifier (chained class) and & .descendant patterns are tracked as
632
+ * unresolvable rather than registered as standalone classes — registering
633
+ * them would produce false negatives in the undefined-class detector.
411
634
  */
412
635
  export function extractClassUsageFromCSSAst(ast, adapter, filePath) {
413
636
  const usage = [];
@@ -423,10 +646,25 @@ export function extractClassUsageFromCSSAst(ast, adapter, filePath) {
423
646
  if (!parent || parent.type !== 'class_selector')
424
647
  continue;
425
648
  const raw = node.raw;
426
- const className = raw.text;
427
- if (className) {
649
+ const rawName = raw.text;
650
+ if (!rawName)
651
+ continue;
652
+ // SCSS nesting resolution: check if parent class_selector has a nesting_selector
653
+ const resolved = resolveNestingSelector(parent);
654
+ if (resolved !== null) {
655
+ // &-pattern: register the resolved or dropped class name
656
+ usage.push({
657
+ className: resolved.className,
658
+ filePath,
659
+ line: node.location.start.line,
660
+ mechanism: 'class',
661
+ unresolvable: !resolved.resolvable,
662
+ });
663
+ }
664
+ else {
665
+ // Plain class_selector (no &), or at-rule top-level
428
666
  usage.push({
429
- className,
667
+ className: rawName,
430
668
  filePath,
431
669
  line: node.location.start.line,
432
670
  mechanism: 'class',
@@ -1 +1 @@
1
- {"version":3,"file":"cssAstExtractor.js","sourceRoot":"","sources":["../../src/styles/cssAstExtractor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cssAstExtractor.js","sourceRoot":"","sources":["../../src/styles/cssAstExtractor.ts"],"names":[],"mappings":"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"}
@@ -40,9 +40,9 @@ export async function syncStyleIndex(rawDb, files, projectRoot, options = {}) {
40
40
  }
41
41
  // Process each file
42
42
  for (const filePath of files) {
43
- // Skip .css files — handled by styles-css pipeline visitor (Spec 26 Phase 2).
44
- // tree-sitter-css is not an SCSS grammar; .scss stays on this regex path.
45
- if (filePath.endsWith('.css'))
43
+ // Skip .css and .scss files — handled by styles-css pipeline visitor (Spec 26 Phase 2).
44
+ // .scss is parsed by tree-sitter-scss which extends the CSS grammar.
45
+ if (filePath.endsWith('.css') || filePath.endsWith('.scss'))
46
46
  continue;
47
47
  try {
48
48
  const content = readFileSync(filePath, 'utf-8');
@@ -120,7 +120,16 @@ async function extractForFile(filePath, sourceCode, registry, tailwindTokens) {
120
120
  if (adapter) {
121
121
  try {
122
122
  const ast = await adapter.parse(filePath, sourceCode);
123
- return extractDeclarations(filePath, adapter, sourceCode, ast, tailwindTokens);
123
+ try {
124
+ return extractDeclarations(filePath, adapter, sourceCode, ast, tailwindTokens);
125
+ }
126
+ finally {
127
+ // Free the WASM tree. The style index parses every TS/JS file to pull
128
+ // out class/style declarations; without this the tree (and, for TSX/JSX,
129
+ // the one-off parser) leaks in the shared Emscripten arena and exhausts
130
+ // the 2 GB wasm ceiling — the trigger for Aborted() on large corpora.
131
+ ast.dispose?.();
132
+ }
124
133
  }
125
134
  catch {
126
135
  // Parse error — skip
@@ -1 +1 @@
1
- {"version":3,"file":"styleIndexer.js","sourceRoot":"","sources":["../../src/styles/styleIndexer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"styleIndexer.js","sourceRoot":"","sources":["../../src/styles/styleIndexer.ts"],"names":[],"mappings":"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"}
@@ -26,19 +26,21 @@ export interface TailwindConfigResult {
26
26
  source: 'v3-js' | 'v4-css' | 'defaults' | 'none';
27
27
  configPath: string | null;
28
28
  }
29
- /**
30
- * Load Tailwind config tokens from a project root.
31
- * Returns default tokens if no config is found — this is always graceful.
32
- */
33
29
  export declare function loadTailwindConfig(projectRoot: string): TailwindConfigResult;
34
30
  /**
35
31
  * Get the tokens as StyleToken[] for storage in the style index.
36
32
  */
37
33
  export declare function tokensToStyleTokens(result: TailwindConfigResult, projectRoot: string): StyleToken[];
38
34
  /**
39
- * Recursively walk projectRoot for .css files containing @theme directives.
40
- * Skips node_modules and .git directories.
35
+ * Find .css files containing @theme directives.
41
36
  * Exported — also used by tailwindUtilityExpander.ts.
37
+ *
38
+ * Uses `git ls-files` when projectRoot is inside a git work tree, so the
39
+ * walk respects .gitignore and does not descend into ignored corpora (e.g. a
40
+ * checked-out validation corpus). This is the same exclusion the audit's own
41
+ * file discovery applies, and it keeps the diff-scoped `changed` gate from
42
+ * paying a full-tree walk per invocation. Falls back to a raw recursive walk
43
+ * when git is unavailable (not a repository).
42
44
  */
43
45
  export declare function findThemeCssFiles(projectRoot: string): string[];
44
46
  //# sourceMappingURL=tailwindConfigLoader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tailwindConfigLoader.d.ts","sourceRoot":"","sources":["../../src/styles/tailwindConfigLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAM7C,uDAAuD;AACvD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED,oCAAoC;AACpC,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,mCAAmC;IACnC,MAAM,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;IACjD,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAsBD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,oBAAoB,CAe5E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,oBAAoB,EAC5B,WAAW,EAAE,MAAM,GAClB,UAAU,EAAE,CAyCd;AAwED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAyC/D"}
1
+ {"version":3,"file":"tailwindConfigLoader.d.ts","sourceRoot":"","sources":["../../src/styles/tailwindConfigLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAM7C,uDAAuD;AACvD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED,oCAAoC;AACpC,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,mCAAmC;IACnC,MAAM,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;IACjD,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAiCD,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,oBAAoB,CA0B5E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,oBAAoB,EAC5B,WAAW,EAAE,MAAM,GAClB,UAAU,EAAE,CAyCd;AAwED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAM/D"}