@@ -10,17 +10,53 @@ export default tseslint.config(
1010 {
1111 rules : {
1212 "@typescript-eslint/no-explicit-any" : "off" ,
13- "@typescript-eslint/no-unused-vars" : "off" ,
13+ "@typescript-eslint/no-unused-vars" : [ "warn" , { "argsIgnorePattern" : "^_" , "varsIgnorePattern" : "^_" , "caughtErrorsIgnorePattern" : "^_" } ] ,
1414 "@typescript-eslint/no-require-imports" : "off" ,
1515 "@typescript-eslint/no-empty-object-type" : "off" ,
16- "no-case-declarations" : "off " ,
16+ "no-case-declarations" : "error " ,
1717 "no-useless-escape" : "off" ,
1818 "prefer-const" : "error" ,
1919 "no-empty" : "warn" ,
2020 "no-undef" : "off" ,
2121 "no-useless-catch" : "error" ,
22+ "no-console" : "warn" ,
2223 "@typescript-eslint/no-this-alias" : "off" ,
2324 "@typescript-eslint/no-unsafe-function-type" : "off"
2425 }
26+ } ,
27+ {
28+ // CLI and tools: console output is intentional for user-facing terminal output
29+ files : [ "packages/tools/**/*.ts" ] ,
30+ rules : {
31+ "no-console" : "off"
32+ }
33+ } ,
34+ {
35+ // Logger implementation: console.* is the underlying transport
36+ files : [ "packages/foundation/types/src/logger.ts" ] ,
37+ rules : {
38+ "no-console" : "off"
39+ }
40+ } ,
41+ {
42+ // SDK driver: logging is user-controlled via enableLogging flag
43+ files : [ "packages/drivers/sdk/src/index.ts" ] ,
44+ rules : {
45+ "no-console" : "off"
46+ }
47+ } ,
48+ {
49+ // Test files: console output is acceptable for debugging and assertions
50+ files : [ "**/*.test.ts" , "**/*.spec.ts" , "**/test/**/*.ts" , "**/__tests__/**/*.ts" , "**/__mocks__/**/*.ts" ] ,
51+ rules : {
52+ "no-console" : "off"
53+ }
54+ } ,
55+ {
56+ // Example files: console output for demonstration purposes
57+ files : [ "examples/**/*.ts" ] ,
58+ rules : {
59+ "no-console" : "off"
60+ }
2561 }
2662) ;
0 commit comments