Pluggable ESLint configuration for Node.js that extends ESNext with Node.js-specific safety checks and best practices
73
{
"context": "This criteria evaluates how well the engineer understands and implements ESLint's multi-level rule severity configuration system, including severity level validation, normalization between string and numeric formats, and proper handling of rule configurations with options.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Severity validation",
"description": "Correctly validates that severity levels are one of: 0, 1, 2, 'off', 'warn', or 'error'. Rejects invalid severity values by throwing an error.",
"max_score": 15
},
{
"name": "String to numeric normalization",
"description": "Properly normalizes string severity levels to their numeric equivalents: 'off' -> 0, 'warn' -> 1, 'error' -> 2.",
"max_score": 20
},
{
"name": "Numeric severity handling",
"description": "Correctly handles numeric severity levels (0, 1, 2) without modification when already in numeric form.",
"max_score": 10
},
{
"name": "Array-format rule handling",
"description": "Properly handles rule configurations in array format (e.g., [severity, options]), normalizing only the severity element while preserving rule options.",
"max_score": 20
},
{
"name": "Configuration merging",
"description": "Correctly merges multiple configuration objects with later configs overriding earlier ones, combining all unique rules while respecting override precedence.",
"max_score": 15
},
{
"name": "Severity categorization",
"description": "Accurately categorizes rules by severity level into disabled (level 0), warnings (level 1), and errors (level 2) for summary generation.",
"max_score": 15
},
{
"name": "Summary object structure",
"description": "Returns summary object with correct structure containing 'disabled', 'warnings', and 'errors' counts that accurately reflect the final merged configuration.",
"max_score": 5
}
]
}Install with Tessl CLI
npx tessl i tessl/npm-eslint-config-nodedocs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10