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.
- package/.claude-plugin/marketplace.json +2 -2
- package/CHANGELOG.md +119 -1
- package/dist/analyzers/__verify_self_probe.d.ts +2 -0
- package/dist/analyzers/__verify_self_probe.d.ts.map +1 -0
- package/dist/analyzers/__verify_self_probe.js +5 -0
- package/dist/analyzers/__verify_self_probe.js.map +1 -0
- package/dist/analyzers/analyzerUtils.d.ts +34 -1
- package/dist/analyzers/analyzerUtils.d.ts.map +1 -1
- package/dist/analyzers/analyzerUtils.js +61 -22
- package/dist/analyzers/analyzerUtils.js.map +1 -1
- package/dist/analyzers/cross-language/APIContractAnalyzer.d.ts +18 -23
- package/dist/analyzers/cross-language/APIContractAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/cross-language/APIContractAnalyzer.js +198 -186
- package/dist/analyzers/cross-language/APIContractAnalyzer.js.map +1 -1
- package/dist/analyzers/cross-language/DependencyGraphBuilder.d.ts +78 -55
- package/dist/analyzers/cross-language/DependencyGraphBuilder.d.ts.map +1 -1
- package/dist/analyzers/cross-language/DependencyGraphBuilder.js +244 -243
- package/dist/analyzers/cross-language/DependencyGraphBuilder.js.map +1 -1
- package/dist/analyzers/cross-language/SchemaValidator.d.ts +27 -37
- package/dist/analyzers/cross-language/SchemaValidator.d.ts.map +1 -1
- package/dist/analyzers/cross-language/SchemaValidator.js +314 -275
- package/dist/analyzers/cross-language/SchemaValidator.js.map +1 -1
- package/dist/analyzers/crossDomain/CrossDomainAnalyzer.d.ts +17 -46
- package/dist/analyzers/crossDomain/CrossDomainAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/crossDomain/CrossDomainAnalyzer.js +620 -523
- package/dist/analyzers/crossDomain/CrossDomainAnalyzer.js.map +1 -1
- package/dist/analyzers/documentationAnalyzer.d.ts +7 -2
- package/dist/analyzers/documentationAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/documentationAnalyzer.js +259 -198
- package/dist/analyzers/documentationAnalyzer.js.map +1 -1
- package/dist/analyzers/invariantsAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/invariantsAnalyzer.js +59 -46
- package/dist/analyzers/invariantsAnalyzer.js.map +1 -1
- package/dist/analyzers/orm/adapterRegistry.d.ts +10 -0
- package/dist/analyzers/orm/adapterRegistry.d.ts.map +1 -1
- package/dist/analyzers/orm/adapterRegistry.js +10 -0
- package/dist/analyzers/orm/adapterRegistry.js.map +1 -1
- package/dist/analyzers/orm/drizzleAdapter.d.ts +22 -0
- package/dist/analyzers/orm/drizzleAdapter.d.ts.map +1 -1
- package/dist/analyzers/orm/drizzleAdapter.js +42 -44
- package/dist/analyzers/orm/drizzleAdapter.js.map +1 -1
- package/dist/analyzers/orm/prismaAdapter.d.ts +30 -0
- package/dist/analyzers/orm/prismaAdapter.d.ts.map +1 -1
- package/dist/analyzers/orm/prismaAdapter.js +30 -0
- package/dist/analyzers/orm/prismaAdapter.js.map +1 -1
- package/dist/analyzers/provenance.d.ts +72 -2
- package/dist/analyzers/provenance.d.ts.map +1 -1
- package/dist/analyzers/provenance.js +462 -338
- package/dist/analyzers/provenance.js.map +1 -1
- package/dist/analyzers/reactAnalyzer.d.ts +11 -0
- package/dist/analyzers/reactAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/reactAnalyzer.js +188 -125
- package/dist/analyzers/reactAnalyzer.js.map +1 -1
- package/dist/analyzers/ruleRegistry.d.ts +118 -1
- package/dist/analyzers/ruleRegistry.d.ts.map +1 -1
- package/dist/analyzers/ruleRegistry.js +1717 -104
- package/dist/analyzers/ruleRegistry.js.map +1 -1
- package/dist/analyzers/ruleTiming.d.ts +54 -0
- package/dist/analyzers/ruleTiming.d.ts.map +1 -0
- package/dist/analyzers/ruleTiming.js +71 -0
- package/dist/analyzers/ruleTiming.js.map +1 -0
- package/dist/analyzers/universal/UniversalConventionsAnalyzer.d.ts +13 -0
- package/dist/analyzers/universal/UniversalConventionsAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/universal/UniversalConventionsAnalyzer.js +362 -283
- package/dist/analyzers/universal/UniversalConventionsAnalyzer.js.map +1 -1
- package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts +26 -68
- package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/universal/UniversalDRYAnalyzer.js +430 -391
- package/dist/analyzers/universal/UniversalDRYAnalyzer.js.map +1 -1
- package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts +24 -186
- package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js +1081 -1061
- package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js.map +1 -1
- package/dist/analyzers/universal/UniversalDocumentationAnalyzer.d.ts +3 -49
- package/dist/analyzers/universal/UniversalDocumentationAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js +414 -340
- package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js.map +1 -1
- package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts +48 -5
- package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js +262 -134
- package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js.map +1 -1
- package/dist/analyzers/universal/UniversalSchemaAnalyzer.d.ts +23 -212
- package/dist/analyzers/universal/UniversalSchemaAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/universal/UniversalSchemaAnalyzer.js +139 -1518
- package/dist/analyzers/universal/UniversalSchemaAnalyzer.js.map +1 -1
- package/dist/analyzers/universal/UniversalStylesAnalyzer.d.ts +78 -79
- package/dist/analyzers/universal/UniversalStylesAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/universal/UniversalStylesAnalyzer.js +613 -472
- package/dist/analyzers/universal/UniversalStylesAnalyzer.js.map +1 -1
- package/dist/analyzers/universal/schema/codeAnalysis.d.ts +307 -0
- package/dist/analyzers/universal/schema/codeAnalysis.d.ts.map +1 -0
- package/dist/analyzers/universal/schema/codeAnalysis.js +965 -0
- package/dist/analyzers/universal/schema/codeAnalysis.js.map +1 -0
- package/dist/analyzers/universal/schema/config.d.ts +31 -0
- package/dist/analyzers/universal/schema/config.d.ts.map +1 -0
- package/dist/analyzers/universal/schema/config.js +57 -0
- package/dist/analyzers/universal/schema/config.js.map +1 -0
- package/dist/analyzers/universal/schema/discovery.d.ts +167 -0
- package/dist/analyzers/universal/schema/discovery.d.ts.map +1 -0
- package/dist/analyzers/universal/schema/discovery.js +616 -0
- package/dist/analyzers/universal/schema/discovery.js.map +1 -0
- package/dist/analyzers/universal/schema/jsonSchema.d.ts +27 -0
- package/dist/analyzers/universal/schema/jsonSchema.d.ts.map +1 -0
- package/dist/analyzers/universal/schema/jsonSchema.js +368 -0
- package/dist/analyzers/universal/schema/jsonSchema.js.map +1 -0
- package/dist/analyzers/universal/schema/migrations.d.ts +90 -0
- package/dist/analyzers/universal/schema/migrations.d.ts.map +1 -0
- package/dist/analyzers/universal/schema/migrations.js +238 -0
- package/dist/analyzers/universal/schema/migrations.js.map +1 -0
- package/dist/analyzers/universal/schema/types.d.ts +131 -0
- package/dist/analyzers/universal/schema/types.d.ts.map +1 -0
- package/dist/analyzers/universal/schema/types.js +10 -0
- package/dist/analyzers/universal/schema/types.js.map +1 -0
- package/dist/analyzers/universal/schema/violations.d.ts +44 -0
- package/dist/analyzers/universal/schema/violations.d.ts.map +1 -0
- package/dist/analyzers/universal/schema/violations.js +54 -0
- package/dist/analyzers/universal/schema/violations.js.map +1 -0
- package/dist/auditRunner.d.ts.map +1 -1
- package/dist/auditRunner.js +101 -39
- package/dist/auditRunner.js.map +1 -1
- package/dist/cli.js +348 -40
- package/dist/cli.js.map +1 -1
- package/dist/config/configLoader.d.ts.map +1 -1
- package/dist/config/configLoader.js +9 -7
- package/dist/config/configLoader.js.map +1 -1
- package/dist/config/defaults.d.ts +12 -3
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +15 -5
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/effectiveConfig.d.ts +75 -0
- package/dist/config/effectiveConfig.d.ts.map +1 -0
- package/dist/config/effectiveConfig.js +213 -0
- package/dist/config/effectiveConfig.js.map +1 -0
- package/dist/config/pathProfiles.d.ts +7 -4
- package/dist/config/pathProfiles.d.ts.map +1 -1
- package/dist/config/pathProfiles.js +8 -10
- package/dist/config/pathProfiles.js.map +1 -1
- package/dist/config/thresholdRationales.d.ts +45 -0
- package/dist/config/thresholdRationales.d.ts.map +1 -0
- package/dist/config/thresholdRationales.js +67 -0
- package/dist/config/thresholdRationales.js.map +1 -0
- package/dist/conventions/conventionMiner.d.ts.map +1 -1
- package/dist/conventions/conventionMiner.js +6 -2
- package/dist/conventions/conventionMiner.js.map +1 -1
- package/dist/enforcement/diffGate.d.ts +55 -0
- package/dist/enforcement/diffGate.d.ts.map +1 -0
- package/dist/enforcement/diffGate.js +136 -0
- package/dist/enforcement/diffGate.js.map +1 -0
- package/dist/enforcement/gate.d.ts +36 -0
- package/dist/enforcement/gate.d.ts.map +1 -0
- package/dist/enforcement/gate.js +72 -0
- package/dist/enforcement/gate.js.map +1 -0
- package/dist/enforcement/suppressions.d.ts +41 -0
- package/dist/enforcement/suppressions.d.ts.map +1 -0
- package/dist/enforcement/suppressions.js +170 -0
- package/dist/enforcement/suppressions.js.map +1 -0
- package/dist/fingerprint.d.ts.map +1 -1
- package/dist/fingerprint.js +4 -1
- package/dist/fingerprint.js.map +1 -1
- package/dist/grammars/tree-sitter-scss.wasm +0 -0
- package/dist/invariants/ruleEngine.d.ts +3 -4
- package/dist/invariants/ruleEngine.d.ts.map +1 -1
- package/dist/invariants/ruleEngine.js +2 -2
- package/dist/invariants/ruleEngine.js.map +1 -1
- package/dist/languages/LanguageOrchestrator.d.ts +14 -0
- package/dist/languages/LanguageOrchestrator.d.ts.map +1 -1
- package/dist/languages/LanguageOrchestrator.js +93 -55
- package/dist/languages/LanguageOrchestrator.js.map +1 -1
- package/dist/languages/LanguageRegistry.d.ts +8 -0
- package/dist/languages/LanguageRegistry.d.ts.map +1 -1
- package/dist/languages/LanguageRegistry.js +8 -0
- package/dist/languages/LanguageRegistry.js.map +1 -1
- package/dist/languages/RuntimeManager.d.ts +82 -60
- package/dist/languages/RuntimeManager.d.ts.map +1 -1
- package/dist/languages/RuntimeManager.js +404 -349
- package/dist/languages/RuntimeManager.js.map +1 -1
- package/dist/languages/UniversalAnalyzer.d.ts +51 -6
- package/dist/languages/UniversalAnalyzer.d.ts.map +1 -1
- package/dist/languages/UniversalAnalyzer.js +127 -88
- package/dist/languages/UniversalAnalyzer.js.map +1 -1
- package/dist/languages/adapterBridge.d.ts +36 -0
- package/dist/languages/adapterBridge.d.ts.map +1 -1
- package/dist/languages/adapterBridge.js +89 -35
- package/dist/languages/adapterBridge.js.map +1 -1
- package/dist/languages/go/GoAdapter.d.ts +66 -23
- package/dist/languages/go/GoAdapter.d.ts.map +1 -1
- package/dist/languages/go/GoAdapter.js +553 -474
- package/dist/languages/go/GoAdapter.js.map +1 -1
- package/dist/languages/tree-sitter/TreeSitterCssAdapter.d.ts +38 -9
- package/dist/languages/tree-sitter/TreeSitterCssAdapter.d.ts.map +1 -1
- package/dist/languages/tree-sitter/TreeSitterCssAdapter.js +111 -74
- package/dist/languages/tree-sitter/TreeSitterCssAdapter.js.map +1 -1
- package/dist/languages/tree-sitter/converter.d.ts +18 -0
- package/dist/languages/tree-sitter/converter.d.ts.map +1 -1
- package/dist/languages/tree-sitter/converter.js +18 -0
- package/dist/languages/tree-sitter/converter.js.map +1 -1
- package/dist/languages/tree-sitter/parser.d.ts +39 -2
- package/dist/languages/tree-sitter/parser.d.ts.map +1 -1
- package/dist/languages/tree-sitter/parser.js +95 -12
- package/dist/languages/tree-sitter/parser.js.map +1 -1
- package/dist/languages/types.d.ts +67 -2
- package/dist/languages/types.d.ts.map +1 -1
- package/dist/languages/typescript/TreeSitterTypeScriptAdapter.d.ts +253 -62
- package/dist/languages/typescript/TreeSitterTypeScriptAdapter.d.ts.map +1 -1
- package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js +1461 -791
- package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js.map +1 -1
- package/dist/mcp-tools/whitelistTools.d.ts +1 -1
- package/dist/mcp-tools-shared.d.ts.map +1 -1
- package/dist/mcp-tools-shared.js +1 -0
- package/dist/mcp-tools-shared.js.map +1 -1
- package/dist/mcpAuditJobs.d.ts.map +1 -1
- package/dist/mcpAuditJobs.js +1 -0
- package/dist/mcpAuditJobs.js.map +1 -1
- package/dist/pipeline.d.ts +30 -1
- package/dist/pipeline.d.ts.map +1 -1
- package/dist/pipeline.js +527 -203
- package/dist/pipeline.js.map +1 -1
- package/dist/pipelineAdapters.d.ts +5 -12
- package/dist/pipelineAdapters.d.ts.map +1 -1
- package/dist/pipelineAdapters.js +175 -100
- package/dist/pipelineAdapters.js.map +1 -1
- package/dist/presets/presets.d.ts +54 -0
- package/dist/presets/presets.d.ts.map +1 -0
- package/dist/presets/presets.js +181 -0
- package/dist/presets/presets.js.map +1 -0
- package/dist/reporting/sarifReportGenerator.d.ts.map +1 -1
- package/dist/reporting/sarifReportGenerator.js +0 -2
- package/dist/reporting/sarifReportGenerator.js.map +1 -1
- package/dist/ruleAliases.d.ts +67 -0
- package/dist/ruleAliases.d.ts.map +1 -0
- package/dist/ruleAliases.js +79 -0
- package/dist/ruleAliases.js.map +1 -0
- package/dist/styles/cssAstExtractor.d.ts +20 -5
- package/dist/styles/cssAstExtractor.d.ts.map +1 -1
- package/dist/styles/cssAstExtractor.js +247 -9
- package/dist/styles/cssAstExtractor.js.map +1 -1
- package/dist/styles/styleIndexer.js +13 -4
- package/dist/styles/styleIndexer.js.map +1 -1
- package/dist/styles/tailwindConfigLoader.d.ts +8 -6
- package/dist/styles/tailwindConfigLoader.d.ts.map +1 -1
- package/dist/styles/tailwindConfigLoader.js +61 -15
- package/dist/styles/tailwindConfigLoader.js.map +1 -1
- package/dist/styles/tailwindUtilityExpander.d.ts.map +1 -1
- package/dist/styles/tailwindUtilityExpander.js +13 -1
- package/dist/styles/tailwindUtilityExpander.js.map +1 -1
- package/dist/types.d.ts +201 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +8 -0
- package/dist/types.js.map +1 -1
- package/package.json +7 -4
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/plugin/hooks/hooks.json +1 -1
- package/plugin/scripts/hook-audit.sh +25 -7
- package/plugin/skills/code-auditor/SKILL.md +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configLoader.js","sourceRoot":"","sources":["../../src/config/configLoader.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"configLoader.js","sourceRoot":"","sources":["../../src/config/configLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -89,6 +89,12 @@ export declare const DEFAULT_ANALYZER_CONFIGS: {
|
|
|
89
89
|
mode: 'hybrid';
|
|
90
90
|
};
|
|
91
91
|
validatorPackageList: string[];
|
|
92
|
+
tableSources: {
|
|
93
|
+
kind: string;
|
|
94
|
+
name: string;
|
|
95
|
+
arg: number;
|
|
96
|
+
description: string;
|
|
97
|
+
}[];
|
|
92
98
|
};
|
|
93
99
|
styles: {
|
|
94
100
|
minCorpus: number;
|
|
@@ -131,9 +137,12 @@ export declare const DEFAULT_ANALYZER_CONFIGS: {
|
|
|
131
137
|
/**
|
|
132
138
|
* Built-in path profiles shipped with the tool.
|
|
133
139
|
*
|
|
134
|
-
* "scripts-and-tests"
|
|
135
|
-
*
|
|
136
|
-
*
|
|
140
|
+
* "scripts-and-tests" excludes scripts, tests, and test fixtures from the
|
|
141
|
+
* blocking gate (Spec 36 R4) — grounded in the Spec 11 triage numbers showing
|
|
142
|
+
* these directories produce noise, not signal. Findings still report at their
|
|
143
|
+
* real severity; the gate simply does not block on them. This replaced the
|
|
144
|
+
* `severityCap` soften-in-place mechanism, which made findings invisible by
|
|
145
|
+
* capping them to "suggestion".
|
|
137
146
|
*
|
|
138
147
|
* Disable entirely via `"builtin": false` in .codeauditor.json.
|
|
139
148
|
* Replace a specific built-in via a user profile with the same name
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEvD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,WAAW,CA2C9C;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CA+BhF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAyBxE;AAED;;GAEG;AACH,eAAO,MAAM,wBAAwB
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEvD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,WAAW,CA2C9C;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CA+BhF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAyBxE;AAED;;GAEG;AACH,eAAO,MAAM,wBAAwB;;QAIjC,kBAAkB;QAClB,iBAAiB;QACjB,sBAAsB;QACtB,iBAAiB;QACjB,aAAa;QAEb,mBAAmB;QAEnB,qBAAqB;QACrB,wBAAwB;;;QAMxB,gBAAgB;QAChB,mBAAmB;QACnB,eAAe;QACf,YAAY;QACZ,YAAY;QACZ,cAAc;QACd,gBAAgB;QAEhB,UAAU;YACR,mBAAmB;YACnB,cAAc;YACd,iBAAiB;;;;QAMnB,gBAAgB;YACd,QAAQ;YACR,KAAK;YACL,OAAO;;QAET,gBAAgB;YACd,oBAAoB;;QAEtB,qBAAqB;YACnB,QAAQ;YACR,gBAAgB;;QAGlB,SAAS;YACP,IAAI,EAAE,QAAQ;;;;QAMhB,mBAAmB;QACnB,gBAAgB;QAChB,gBAAgB;QAChB,iBAAiB;QACjB,oBAAoB;QACpB,cAAc;QASd,KAAK;QACL,YAAY;QACZ,WAAW;QACX,eAAe;;;;;;;;;;;;;;;;;YA8Bb,IAAI,EAAE,QAAQ;;;;;;;;;;;QAkBhB,SAAS;QACT,WAAW;QACX,eAAe;QACf,YAAY;QACZ,eAAe;QAKf,iBAAiB;QACjB,mCAAmC;QACnC,6BAA6B;QAC7B,iCAAiC;QACjC,6BAA6B;;;QAW7B,SAAS;QACT,cAAc;QACd,SAAS;QACT,uBAAuB;;;QAKvB,eAAe;YACb,sBAAsB;YACtB,sBAAsB;YACtB,6BAA6B;YAC7B,WAAW;;QAEb,eAAe;YACb,UAAU;YACV,SAAS;YACT,SAAS;YACT,KAAK;;QAEP,QAAQ;YACN,SAAS;YACT,gBAAgB;YAChB,aAAa;;;CAGlB,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,qBAAqB,EAAE,WAAW,EAc9C,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,WAAW,EAAE,GAAG,SAAS,EACvC,cAAc,EAAE,OAAO,GAAG,SAAS,GAClC,WAAW,EAAE,GAAG,SAAS,CAqB3B;AAED;;GAEG;AACH,eAAO,MAAM,yBAAyB;IACpC,YAAY;IACZ,YAAY;IACZ,iBAAiB;IACjB,eAAe;CAChB,CAAC"}
|
package/dist/config/defaults.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
export function getDefaultConfig() {
|
|
8
8
|
return {
|
|
9
|
-
includePaths: ['**/*.ts', '**/*.tsx', '**/*.js', '**/*.jsx', '**/*.go', '**/*.css', '**/*.scss'],
|
|
9
|
+
includePaths: ['**/*.ts', '**/*.tsx', '**/*.js', '**/*.jsx', '**/*.go', '**/*.css', '**/*.scss', '**/*.sql', '**/*.prisma'],
|
|
10
10
|
excludePaths: [
|
|
11
11
|
'**/node_modules/**',
|
|
12
12
|
'**/.next/**',
|
|
@@ -213,6 +213,13 @@ export const DEFAULT_ANALYZER_CONFIGS = {
|
|
|
213
213
|
'zod', 'joi', 'ajv', 'valibot', 'yup', 'superstruct', 'arktype',
|
|
214
214
|
'@sinclair/typebox', 'class-validator',
|
|
215
215
|
],
|
|
216
|
+
// Spec 29: Declarative table-source registry — Tier 2 (ORM detection).
|
|
217
|
+
// Adding an ORM becomes a config entry, not code.
|
|
218
|
+
tableSources: [
|
|
219
|
+
{ kind: 'callee', name: 'pgTable', arg: 0, description: 'Drizzle PostgreSQL table' },
|
|
220
|
+
{ kind: 'callee', name: 'mysqlTable', arg: 0, description: 'Drizzle MySQL table' },
|
|
221
|
+
{ kind: 'callee', name: 'sqliteTable', arg: 0, description: 'Drizzle SQLite table' },
|
|
222
|
+
],
|
|
216
223
|
},
|
|
217
224
|
// Spec 10 R3: style intelligence analyzer defaults
|
|
218
225
|
styles: {
|
|
@@ -268,9 +275,12 @@ export const DEFAULT_ANALYZER_CONFIGS = {
|
|
|
268
275
|
/**
|
|
269
276
|
* Built-in path profiles shipped with the tool.
|
|
270
277
|
*
|
|
271
|
-
* "scripts-and-tests"
|
|
272
|
-
*
|
|
273
|
-
*
|
|
278
|
+
* "scripts-and-tests" excludes scripts, tests, and test fixtures from the
|
|
279
|
+
* blocking gate (Spec 36 R4) — grounded in the Spec 11 triage numbers showing
|
|
280
|
+
* these directories produce noise, not signal. Findings still report at their
|
|
281
|
+
* real severity; the gate simply does not block on them. This replaced the
|
|
282
|
+
* `severityCap` soften-in-place mechanism, which made findings invisible by
|
|
283
|
+
* capping them to "suggestion".
|
|
274
284
|
*
|
|
275
285
|
* Disable entirely via `"builtin": false` in .codeauditor.json.
|
|
276
286
|
* Replace a specific built-in via a user profile with the same name
|
|
@@ -288,7 +298,7 @@ export const BUILTIN_PATH_PROFILES = [
|
|
|
288
298
|
'*.test.*',
|
|
289
299
|
'*.spec.*',
|
|
290
300
|
],
|
|
291
|
-
overrides: {
|
|
301
|
+
overrides: { excludeFromGate: true },
|
|
292
302
|
},
|
|
293
303
|
];
|
|
294
304
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QACL,YAAY,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Effective-config resolution for `print-config` (Spec 38 R1).
|
|
3
|
+
*
|
|
4
|
+
* The tool's config is a flat blob spread across several layers:
|
|
5
|
+
* - runtime defaults (each analyzer's `DEFAULT_*_CONFIG`),
|
|
6
|
+
* - project config (`analyzerConfigs[name]` in .codeauditor.json),
|
|
7
|
+
* - `_infra` (pathProfiles, severityOverrides, files, projectRoot),
|
|
8
|
+
* - per-file path-profile overrides (resolved by glob).
|
|
9
|
+
*
|
|
10
|
+
* This module reconstructs, for a single file, the exact config the pipeline
|
|
11
|
+
* hands to each analyzer — and names the source of every value, so a key that
|
|
12
|
+
* silently drifted from its default (`minCorpus`, `schemas` vs `knownTables`,
|
|
13
|
+
* `dbWrapperNames`) becomes visible instead of being archaeology.
|
|
14
|
+
*/
|
|
15
|
+
import { type PathProfile } from './pathProfiles.js';
|
|
16
|
+
import type { Preset } from '../presets/presets.js';
|
|
17
|
+
export type ConfigSource = 'default' | 'project-config' | 'env' | 'cli' | `path-profile:${string}` | `builtin:${string}` | `preset:${string}`;
|
|
18
|
+
export interface EffectiveKey {
|
|
19
|
+
/** Dot-notation key (e.g. `solid.maxMethodsPerClass`). */
|
|
20
|
+
key: string;
|
|
21
|
+
value: unknown;
|
|
22
|
+
source: ConfigSource;
|
|
23
|
+
/** True when the effective value differs from the runtime default. */
|
|
24
|
+
differsFromDefault: boolean;
|
|
25
|
+
defaultValue?: unknown;
|
|
26
|
+
}
|
|
27
|
+
export interface EffectiveAnalyzerConfig {
|
|
28
|
+
/** Kebab namespace matching pipeline visitor names. */
|
|
29
|
+
namespace: string;
|
|
30
|
+
keys: EffectiveKey[];
|
|
31
|
+
}
|
|
32
|
+
export interface EffectiveConfigResult {
|
|
33
|
+
filePath: string;
|
|
34
|
+
relativePath: string;
|
|
35
|
+
projectRoot: string;
|
|
36
|
+
matchedProfiles: string[];
|
|
37
|
+
excludeFromGate?: boolean;
|
|
38
|
+
analyzers: EffectiveAnalyzerConfig[];
|
|
39
|
+
topLevel: EffectiveKey[];
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Runtime default config per kebab namespace. This is the ground truth that
|
|
43
|
+
* each analyzer applies internally via `{ ...DEFAULT_X_CONFIG, ...config }`.
|
|
44
|
+
*
|
|
45
|
+
* `invariants` is intentionally absent — the invariants analyzer reads its
|
|
46
|
+
* rules from the `.codeauditor.json` `rules` array, not `analyzerConfigs`.
|
|
47
|
+
*/
|
|
48
|
+
export declare const RUNTIME_DEFAULT_CONFIGS: Record<string, Record<string, unknown>>;
|
|
49
|
+
/** Flatten a nested object to dot-notation. Arrays are treated as leaf values. */
|
|
50
|
+
export declare function flatten(value: unknown, prefix?: string): Record<string, unknown>;
|
|
51
|
+
/**
|
|
52
|
+
* Compute the effective per-analyzer config for one file.
|
|
53
|
+
*
|
|
54
|
+
* Precedence (highest wins), mirroring pipeline.ts stage 2:
|
|
55
|
+
* path-profile overrides > project analyzerConfigs[name] > preset > runtime default
|
|
56
|
+
*
|
|
57
|
+
* `_infra` is infrastructure (pathProfiles, severityOverrides, files,
|
|
58
|
+
* projectRoot) spread into every visitor's config; it is surfaced in
|
|
59
|
+
* `topLevel` rather than re-listed per analyzer.
|
|
60
|
+
*/
|
|
61
|
+
export declare function computeEffectiveConfig(opts: {
|
|
62
|
+
filePath: string;
|
|
63
|
+
projectRoot: string;
|
|
64
|
+
analyzerConfigs?: Record<string, unknown>;
|
|
65
|
+
pathProfiles?: PathProfile[];
|
|
66
|
+
enabledAnalyzers?: string[];
|
|
67
|
+
/** Ordered presets; later presets win on key collision (Spec 38 R4). */
|
|
68
|
+
presets?: Preset[];
|
|
69
|
+
}): EffectiveConfigResult;
|
|
70
|
+
/**
|
|
71
|
+
* Top-level (non-analyzer) config keys with source tracking. `base` is
|
|
72
|
+
* `getDefaultConfig()`; `project` is the config loaded from file/env/cli.
|
|
73
|
+
*/
|
|
74
|
+
export declare function computeTopLevelConfig(base: Record<string, unknown>, project: Record<string, unknown>): EffectiveKey[];
|
|
75
|
+
//# sourceMappingURL=effectiveConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"effectiveConfig.d.ts","sourceRoot":"","sources":["../../src/config/effectiveConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAsB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAWpD,MAAM,MAAM,YAAY,GACpB,SAAS,GACT,gBAAgB,GAChB,KAAK,GACL,KAAK,GACL,gBAAgB,MAAM,EAAE,GACxB,WAAW,MAAM,EAAE,GACnB,UAAU,MAAM,EAAE,CAAC;AAEvB,MAAM,WAAW,YAAY;IAC3B,0DAA0D;IAC1D,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,sEAAsE;IACtE,kBAAkB,EAAE,OAAO,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,uBAAuB;IACtC,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,YAAY,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,uBAAuB,EAAE,CAAC;IACrC,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AA6BD;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAU3E,CAAC;AAWF,kFAAkF;AAClF,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,SAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAW5E;AA6BD;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,wEAAwE;IACxE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB,GAAG,qBAAqB,CA+DxB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,YAAY,EAAE,CAqBhB"}
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Effective-config resolution for `print-config` (Spec 38 R1).
|
|
3
|
+
*
|
|
4
|
+
* The tool's config is a flat blob spread across several layers:
|
|
5
|
+
* - runtime defaults (each analyzer's `DEFAULT_*_CONFIG`),
|
|
6
|
+
* - project config (`analyzerConfigs[name]` in .codeauditor.json),
|
|
7
|
+
* - `_infra` (pathProfiles, severityOverrides, files, projectRoot),
|
|
8
|
+
* - per-file path-profile overrides (resolved by glob).
|
|
9
|
+
*
|
|
10
|
+
* This module reconstructs, for a single file, the exact config the pipeline
|
|
11
|
+
* hands to each analyzer — and names the source of every value, so a key that
|
|
12
|
+
* silently drifted from its default (`minCorpus`, `schemas` vs `knownTables`,
|
|
13
|
+
* `dbWrapperNames`) becomes visible instead of being archaeology.
|
|
14
|
+
*/
|
|
15
|
+
import { BUILTIN_PATH_PROFILES } from './defaults.js';
|
|
16
|
+
import { resolvePathProfile } from './pathProfiles.js';
|
|
17
|
+
import { DEFAULT_SOLID_CONFIG } from '../analyzers/universal/UniversalSOLIDAnalyzer.js';
|
|
18
|
+
import { DEFAULT_DRY_CONFIG } from '../analyzers/universal/UniversalDRYAnalyzer.js';
|
|
19
|
+
import { DEFAULT_DATA_ACCESS_CONFIG } from '../analyzers/universal/UniversalDataAccessAnalyzer.js';
|
|
20
|
+
import { DEFAULT_DOCUMENTATION_CONFIG } from '../analyzers/universal/UniversalDocumentationAnalyzer.js';
|
|
21
|
+
import { DEFAULT_STYLES_CONFIG } from '../analyzers/universal/UniversalStylesAnalyzer.js';
|
|
22
|
+
import { DEFAULT_CONVENTIONS_CONFIG } from '../analyzers/universal/UniversalConventionsAnalyzer.js';
|
|
23
|
+
import { DEFAULT_REACT_CONFIG } from '../analyzers/reactAnalyzer.js';
|
|
24
|
+
import { DEFAULT_SCHEMA_CONFIG } from '../analyzers/universal/schema/config.js';
|
|
25
|
+
/**
|
|
26
|
+
* Cross-domain has no flat `DEFAULT_*_CONFIG` export; its runtime defaults are
|
|
27
|
+
* inline `??` fallbacks in CrossDomainAnalyzer. `schemaLifecycle` is always on;
|
|
28
|
+
* `validatorBypass` and `coverage` are opt-in (only active when the config key
|
|
29
|
+
* is truthy), so their "default in effect" is the object the analyzer would use
|
|
30
|
+
* once enabled.
|
|
31
|
+
*/
|
|
32
|
+
const CROSS_DOMAIN_DEFAULT = {
|
|
33
|
+
schemaLifecycle: {
|
|
34
|
+
enableWrittenNeverRead: true,
|
|
35
|
+
enableReadNeverWritten: true,
|
|
36
|
+
enableTransactionBoundaryRisk: true,
|
|
37
|
+
txnTableMax: 4,
|
|
38
|
+
},
|
|
39
|
+
validatorBypass: {
|
|
40
|
+
validators: [],
|
|
41
|
+
modeShare: 0.8,
|
|
42
|
+
minCorpus: 20,
|
|
43
|
+
depth: 3,
|
|
44
|
+
},
|
|
45
|
+
coverage: {
|
|
46
|
+
testGlobs: ['**/*.test.*', '**/*.spec.*', '**/__tests__/**'],
|
|
47
|
+
staticReachDepth: 2,
|
|
48
|
+
topRiskDecile: 0.1,
|
|
49
|
+
},
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Runtime default config per kebab namespace. This is the ground truth that
|
|
53
|
+
* each analyzer applies internally via `{ ...DEFAULT_X_CONFIG, ...config }`.
|
|
54
|
+
*
|
|
55
|
+
* `invariants` is intentionally absent — the invariants analyzer reads its
|
|
56
|
+
* rules from the `.codeauditor.json` `rules` array, not `analyzerConfigs`.
|
|
57
|
+
*/
|
|
58
|
+
export const RUNTIME_DEFAULT_CONFIGS = {
|
|
59
|
+
solid: DEFAULT_SOLID_CONFIG,
|
|
60
|
+
dry: DEFAULT_DRY_CONFIG,
|
|
61
|
+
'data-access': DEFAULT_DATA_ACCESS_CONFIG,
|
|
62
|
+
documentation: DEFAULT_DOCUMENTATION_CONFIG,
|
|
63
|
+
react: DEFAULT_REACT_CONFIG,
|
|
64
|
+
styles: DEFAULT_STYLES_CONFIG,
|
|
65
|
+
conventions: DEFAULT_CONVENTIONS_CONFIG,
|
|
66
|
+
schema: DEFAULT_SCHEMA_CONFIG,
|
|
67
|
+
'cross-domain': CROSS_DOMAIN_DEFAULT,
|
|
68
|
+
};
|
|
69
|
+
const BUILTIN_NAMES = new Set(BUILTIN_PATH_PROFILES.map((p) => p.name));
|
|
70
|
+
/** Classify a merged path profile as built-in or user-defined. */
|
|
71
|
+
function profileSource(profile) {
|
|
72
|
+
return profile.builtin !== false && BUILTIN_NAMES.has(profile.name)
|
|
73
|
+
? `builtin:${profile.name}`
|
|
74
|
+
: `path-profile:${profile.name}`;
|
|
75
|
+
}
|
|
76
|
+
/** Flatten a nested object to dot-notation. Arrays are treated as leaf values. */
|
|
77
|
+
export function flatten(value, prefix = '') {
|
|
78
|
+
const out = {};
|
|
79
|
+
if (value === null || typeof value !== 'object' || Array.isArray(value)) {
|
|
80
|
+
out[prefix] = value;
|
|
81
|
+
return out;
|
|
82
|
+
}
|
|
83
|
+
for (const [k, v] of Object.entries(value)) {
|
|
84
|
+
const key = prefix ? `${prefix}.${k}` : k;
|
|
85
|
+
Object.assign(out, flatten(v, key));
|
|
86
|
+
}
|
|
87
|
+
return out;
|
|
88
|
+
}
|
|
89
|
+
function valuesEqual(a, b) {
|
|
90
|
+
return JSON.stringify(a) === JSON.stringify(b);
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Flatten the ordered presets for one namespace into a merged flat object and
|
|
94
|
+
* a per-key source map. Later presets win on key collision (including nested
|
|
95
|
+
* keys, which flatten to distinct dot-notation entries so partial overrides
|
|
96
|
+
* compose rather than clobber).
|
|
97
|
+
*/
|
|
98
|
+
function flattenPresetLayer(namespace, presets) {
|
|
99
|
+
const flat = {};
|
|
100
|
+
const sourceByKey = {};
|
|
101
|
+
for (const preset of presets) {
|
|
102
|
+
const fragment = preset.config[namespace];
|
|
103
|
+
if (!fragment)
|
|
104
|
+
continue;
|
|
105
|
+
for (const [key, value] of Object.entries(flatten(fragment, namespace))) {
|
|
106
|
+
flat[key] = value;
|
|
107
|
+
sourceByKey[key] = preset.id;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
return { flat, sourceByKey };
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Compute the effective per-analyzer config for one file.
|
|
114
|
+
*
|
|
115
|
+
* Precedence (highest wins), mirroring pipeline.ts stage 2:
|
|
116
|
+
* path-profile overrides > project analyzerConfigs[name] > preset > runtime default
|
|
117
|
+
*
|
|
118
|
+
* `_infra` is infrastructure (pathProfiles, severityOverrides, files,
|
|
119
|
+
* projectRoot) spread into every visitor's config; it is surfaced in
|
|
120
|
+
* `topLevel` rather than re-listed per analyzer.
|
|
121
|
+
*/
|
|
122
|
+
export function computeEffectiveConfig(opts) {
|
|
123
|
+
const { filePath, projectRoot, analyzerConfigs = {}, pathProfiles = [], enabledAnalyzers, presets = [] } = opts;
|
|
124
|
+
const resolved = pathProfiles.length > 0
|
|
125
|
+
? resolvePathProfile(filePath, projectRoot, pathProfiles)
|
|
126
|
+
: { overrides: {}, excludeFromGate: false, matchedProfileNames: [] };
|
|
127
|
+
const relativePath = relativePosix(projectRoot, filePath);
|
|
128
|
+
const namespaces = enabledAnalyzers && enabledAnalyzers.length > 0
|
|
129
|
+
? enabledAnalyzers.filter((n) => n in RUNTIME_DEFAULT_CONFIGS)
|
|
130
|
+
: Object.keys(RUNTIME_DEFAULT_CONFIGS);
|
|
131
|
+
const analyzers = namespaces.map((namespace) => {
|
|
132
|
+
const defaults = RUNTIME_DEFAULT_CONFIGS[namespace] ?? {};
|
|
133
|
+
const projectOverride = analyzerConfigs[namespace] ?? {};
|
|
134
|
+
const flatDefaults = flatten(defaults, namespace);
|
|
135
|
+
const flatPreset = flattenPresetLayer(namespace, presets);
|
|
136
|
+
const flatProject = flatten(projectOverride, namespace);
|
|
137
|
+
// Path-profile overrides are flat and unnamespaced; the pipeline spreads
|
|
138
|
+
// them into every visitor, so namespace them for display parity.
|
|
139
|
+
const flatProfile = flatten(resolved.overrides, namespace);
|
|
140
|
+
const merged = { ...flatDefaults, ...flatPreset.flat, ...flatProject, ...flatProfile };
|
|
141
|
+
const keys = Object.keys(merged)
|
|
142
|
+
.sort()
|
|
143
|
+
.map((key) => {
|
|
144
|
+
const value = merged[key];
|
|
145
|
+
const defaultValue = flatDefaults[key];
|
|
146
|
+
const differs = !(key in flatDefaults) || !valuesEqual(value, defaultValue);
|
|
147
|
+
let source = 'default';
|
|
148
|
+
if (key in flatProfile) {
|
|
149
|
+
// Highest precedence — attribute to the last matching profile.
|
|
150
|
+
const lastProfile = resolved.matchedProfileNames[resolved.matchedProfileNames.length - 1];
|
|
151
|
+
const profile = pathProfiles.find((p) => p.name === lastProfile);
|
|
152
|
+
source = profile ? profileSource(profile) : 'path-profile:unknown';
|
|
153
|
+
}
|
|
154
|
+
else if (key in flatProject) {
|
|
155
|
+
source = 'project-config';
|
|
156
|
+
}
|
|
157
|
+
else if (key in flatPreset.sourceByKey) {
|
|
158
|
+
source = `preset:${flatPreset.sourceByKey[key]}`;
|
|
159
|
+
}
|
|
160
|
+
return {
|
|
161
|
+
key,
|
|
162
|
+
value,
|
|
163
|
+
source,
|
|
164
|
+
differsFromDefault: differs,
|
|
165
|
+
defaultValue: key in flatDefaults ? defaultValue : undefined,
|
|
166
|
+
};
|
|
167
|
+
});
|
|
168
|
+
return { namespace, keys };
|
|
169
|
+
});
|
|
170
|
+
return {
|
|
171
|
+
filePath,
|
|
172
|
+
relativePath,
|
|
173
|
+
projectRoot,
|
|
174
|
+
matchedProfiles: resolved.matchedProfileNames,
|
|
175
|
+
excludeFromGate: resolved.excludeFromGate,
|
|
176
|
+
analyzers,
|
|
177
|
+
topLevel: [],
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Top-level (non-analyzer) config keys with source tracking. `base` is
|
|
182
|
+
* `getDefaultConfig()`; `project` is the config loaded from file/env/cli.
|
|
183
|
+
*/
|
|
184
|
+
export function computeTopLevelConfig(base, project) {
|
|
185
|
+
const keys = new Set([...Object.keys(base), ...Object.keys(project)]);
|
|
186
|
+
const out = [];
|
|
187
|
+
for (const key of [...keys].sort()) {
|
|
188
|
+
const baseValue = base[key];
|
|
189
|
+
const projectValue = project[key];
|
|
190
|
+
const hasProject = key in project && projectValue !== undefined;
|
|
191
|
+
const value = hasProject ? projectValue : baseValue;
|
|
192
|
+
const differs = hasProject && !valuesEqual(value, baseValue);
|
|
193
|
+
out.push({
|
|
194
|
+
key,
|
|
195
|
+
value,
|
|
196
|
+
// A key that equals its default is indistinguishable from unset — the
|
|
197
|
+
// effective value is the default. Only a differing value is attributable
|
|
198
|
+
// to project config.
|
|
199
|
+
source: differs ? 'project-config' : 'default',
|
|
200
|
+
differsFromDefault: differs,
|
|
201
|
+
defaultValue: baseValue,
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
return out;
|
|
205
|
+
}
|
|
206
|
+
function relativePosix(root, file) {
|
|
207
|
+
// Use path.relative then normalize separators for stable output.
|
|
208
|
+
const rel = file.startsWith(root)
|
|
209
|
+
? file.slice(root.length).replace(/^[/\\]+/, '')
|
|
210
|
+
: file;
|
|
211
|
+
return rel.split('\\').join('/');
|
|
212
|
+
}
|
|
213
|
+
//# sourceMappingURL=effectiveConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"effectiveConfig.js","sourceRoot":"","sources":["../../src/config/effectiveConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,10 +19,13 @@ export interface PathProfile {
|
|
|
19
19
|
builtin?: boolean;
|
|
20
20
|
}
|
|
21
21
|
export interface ResolvedProfile {
|
|
22
|
-
/** Merged overrides (excluding
|
|
22
|
+
/** Merged overrides (excluding gate-exclusion). */
|
|
23
23
|
overrides: Record<string, unknown>;
|
|
24
|
-
/**
|
|
25
|
-
|
|
24
|
+
/**
|
|
25
|
+
* Spec 36 R4 — true when the file is excluded from the blocking gate by a
|
|
26
|
+
* matching path profile. Findings still report at their real severity.
|
|
27
|
+
*/
|
|
28
|
+
excludeFromGate: boolean;
|
|
26
29
|
/** Names of all profiles that matched this file, in match order. */
|
|
27
30
|
matchedProfileNames: string[];
|
|
28
31
|
}
|
|
@@ -32,7 +35,7 @@ export interface ResolvedProfile {
|
|
|
32
35
|
* @param filePath - Absolute path to the file being analyzed
|
|
33
36
|
* @param projectRoot - Project root directory
|
|
34
37
|
* @param profiles - Ordered array of path profiles (built-in + user)
|
|
35
|
-
* @returns Merged overrides,
|
|
38
|
+
* @returns Merged overrides, gate exclusion, and matched profile names
|
|
36
39
|
*/
|
|
37
40
|
export declare function resolvePathProfile(filePath: string, projectRoot: string, profiles: PathProfile[]): ResolvedProfile;
|
|
38
41
|
//# sourceMappingURL=pathProfiles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pathProfiles.d.ts","sourceRoot":"","sources":["../../src/config/pathProfiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,MAAM,WAAW,WAAW;IAC1B,oCAAoC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,wEAAwE;IACxE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,mEAAmE;IACnE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,
|
|
1
|
+
{"version":3,"file":"pathProfiles.d.ts","sourceRoot":"","sources":["../../src/config/pathProfiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,MAAM,WAAW,WAAW;IAC1B,oCAAoC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,wEAAwE;IACxE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,mEAAmE;IACnE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,mDAAmD;IACnD,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC;;;OAGG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB,oEAAoE;IACpE,mBAAmB,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,WAAW,EAAE,GACtB,eAAe,CA0BjB"}
|
|
@@ -10,18 +10,17 @@
|
|
|
10
10
|
*/
|
|
11
11
|
import picomatch from 'picomatch';
|
|
12
12
|
import path from 'path';
|
|
13
|
-
const VALID_SEVERITIES = new Set(['suggestion', 'warning', 'critical']);
|
|
14
13
|
/**
|
|
15
14
|
* Resolve which profiles match a file and merge their overrides.
|
|
16
15
|
*
|
|
17
16
|
* @param filePath - Absolute path to the file being analyzed
|
|
18
17
|
* @param projectRoot - Project root directory
|
|
19
18
|
* @param profiles - Ordered array of path profiles (built-in + user)
|
|
20
|
-
* @returns Merged overrides,
|
|
19
|
+
* @returns Merged overrides, gate exclusion, and matched profile names
|
|
21
20
|
*/
|
|
22
21
|
export function resolvePathProfile(filePath, projectRoot, profiles) {
|
|
23
22
|
const overrides = {};
|
|
24
|
-
let
|
|
23
|
+
let excludeFromGate = false;
|
|
25
24
|
const matchedProfileNames = [];
|
|
26
25
|
const relativePath = path.relative(projectRoot, filePath);
|
|
27
26
|
for (const profile of profiles) {
|
|
@@ -30,18 +29,17 @@ export function resolvePathProfile(filePath, projectRoot, profiles) {
|
|
|
30
29
|
continue;
|
|
31
30
|
matchedProfileNames.push(profile.name);
|
|
32
31
|
for (const [key, value] of Object.entries(profile.overrides)) {
|
|
33
|
-
if (key === '
|
|
34
|
-
|
|
32
|
+
if (key === 'excludeFromGate') {
|
|
33
|
+
// Last matching profile that mentions the key wins (consistent with
|
|
34
|
+
// "later wins" override merging). A profile that doesn't mention it
|
|
35
|
+
// leaves the prior value untouched.
|
|
36
|
+
excludeFromGate = value === true;
|
|
35
37
|
}
|
|
36
38
|
else {
|
|
37
39
|
overrides[key] = value;
|
|
38
40
|
}
|
|
39
41
|
}
|
|
40
42
|
}
|
|
41
|
-
|
|
42
|
-
// Should never reach here if validateConfig catches it, but guard anyway
|
|
43
|
-
severityCap = undefined;
|
|
44
|
-
}
|
|
45
|
-
return { overrides, severityCap, matchedProfileNames };
|
|
43
|
+
return { overrides, excludeFromGate, matchedProfileNames };
|
|
46
44
|
}
|
|
47
45
|
//# sourceMappingURL=pathProfiles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pathProfiles.js","sourceRoot":"","sources":["../../src/config/pathProfiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,SAAS,MAAM,WAAW,CAAC;AAClC,OAAO,IAAI,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"pathProfiles.js","sourceRoot":"","sources":["../../src/config/pathProfiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,SAAS,MAAM,WAAW,CAAC;AAClC,OAAO,IAAI,MAAM,MAAM,CAAC;AAyBxB;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAChC,QAAgB,EAChB,WAAmB,EACnB,QAAuB;IAEvB,MAAM,SAAS,GAA4B,EAAE,CAAC;IAC9C,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,MAAM,mBAAmB,GAAa,EAAE,CAAC;IAEzC,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAE1D,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,OAAO;YAAE,SAAS;QAEvB,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7D,IAAI,GAAG,KAAK,iBAAiB,EAAE,CAAC;gBAC9B,oEAAoE;gBACpE,oEAAoE;gBACpE,oCAAoC;gBACpC,eAAe,GAAG,KAAK,KAAK,IAAI,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACzB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC;AAC7D,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Spec 36 R5 — threshold changes require a written rationale.
|
|
3
|
+
*
|
|
4
|
+
* The historical failure this guards: Spec 33's item 15 was closed by moving
|
|
5
|
+
* `maxLinesPerMethod` 50→100 (and `maxParametersPerMethod` 4→6) while chasing a
|
|
6
|
+
* zero, which silently dropped 660 of recall-protocol's `single-responsibility`
|
|
7
|
+
* findings. A threshold change must be an explicit, justified decision — not a
|
|
8
|
+
* side effect of making one file pass.
|
|
9
|
+
*
|
|
10
|
+
* This module enumerates every tunable threshold named by the rule registry
|
|
11
|
+
* (`RuleRegistryEntry.thresholds`), compares the user's effective value against
|
|
12
|
+
* the analyzer's runtime default (`RUNTIME_DEFAULT_CONFIGS`), and:
|
|
13
|
+
* - records the change (default → effective) for the run's threshold report;
|
|
14
|
+
* - errors when a change has no non-empty `rationales["<analyzer>.<key>"]`.
|
|
15
|
+
*
|
|
16
|
+
* Presets are deliberately out of scope: they are curated, shareable layers
|
|
17
|
+
* (Spec 38 R4), not a project's committed decision. The caller checks the
|
|
18
|
+
* user-facing `analyzerConfigs` layer *before* presets are applied.
|
|
19
|
+
*/
|
|
20
|
+
export interface ThresholdChange {
|
|
21
|
+
/** Dot-notation key within the analyzer namespace, e.g. `solid.maxLinesPerMethod`. */
|
|
22
|
+
key: string;
|
|
23
|
+
/** The analyzer's runtime default. */
|
|
24
|
+
defaultValue: unknown;
|
|
25
|
+
/** The user's effective value (differs from default). */
|
|
26
|
+
effectiveValue: unknown;
|
|
27
|
+
/** Whether a non-empty rationale was provided. */
|
|
28
|
+
hasRationale: boolean;
|
|
29
|
+
}
|
|
30
|
+
export interface ThresholdCheckResult {
|
|
31
|
+
/** Config errors — one per changed threshold with no rationale. */
|
|
32
|
+
errors: string[];
|
|
33
|
+
/** Every threshold change detected, whether or not a rationale was provided. */
|
|
34
|
+
changes: ThresholdChange[];
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Compare the user's `analyzerConfigs` layer against the analyzer defaults and
|
|
38
|
+
* require a rationale for every threshold it changes.
|
|
39
|
+
*
|
|
40
|
+
* @param analyzerConfigs The user-facing config layer (project config file +
|
|
41
|
+
* inline options), BEFORE presets are applied.
|
|
42
|
+
* @param rationales Optional `rationales` map from the project config.
|
|
43
|
+
*/
|
|
44
|
+
export declare function checkThresholdRationales(analyzerConfigs: Record<string, unknown> | undefined, rationales: Record<string, string> | undefined): ThresholdCheckResult;
|
|
45
|
+
//# sourceMappingURL=thresholdRationales.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thresholdRationales.d.ts","sourceRoot":"","sources":["../../src/config/thresholdRationales.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAKH,MAAM,WAAW,eAAe;IAC9B,sFAAsF;IACtF,GAAG,EAAE,MAAM,CAAC;IACZ,sCAAsC;IACtC,YAAY,EAAE,OAAO,CAAC;IACtB,yDAAyD;IACzD,cAAc,EAAE,OAAO,CAAC;IACxB,kDAAkD;IAClD,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,mEAAmE;IACnE,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,gFAAgF;IAChF,OAAO,EAAE,eAAe,EAAE,CAAC;CAC5B;AAMD;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACpD,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,GAC7C,oBAAoB,CA0CtB"}
|