UNPKG

claude-flow-depth

Version:

DEPTH Methodology Installer - Ousterhout-First Development for Claude Code

80 lines (72 loc) 2.05 kB
module.exports = { env: { es2022: true, node: true }, extends: [ 'standard' ], parserOptions: { ecmaVersion: 'latest', sourceType: 'module' }, rules: { // DEPTH methodology code style rules // Enforce information hiding - prefer private fields 'no-underscore-dangle': 'off', // Allow private convention // Encourage deep modules - limit public interface complexity 'max-public-methods': ['error', 5], 'max-params': ['error', 3], // Force simple interfaces // Strategic investment - require documentation 'require-jsdoc': ['error', { require: { FunctionDeclaration: true, MethodDefinition: true, ClassDeclaration: true, ArrowFunctionExpression: false, FunctionExpression: false } }], // Interface simplicity 'complexity': ['error', 10], // Limit cognitive complexity 'max-depth': ['error', 4], // Limit nesting depth 'max-statements': ['error', 20], // Limit function size // Information hiding enforcement 'no-magic-numbers': ['error', { ignore: [0, 1, -1], ignoreArrayIndexes: true, detectObjects: false }], // Design-twice validation - require explicit choices 'no-implicit-coercion': 'error', 'no-implicit-globals': 'error', // Code quality for long-term maintenance 'prefer-const': 'error', 'no-var': 'error', 'no-console': 'warn', // Use logger instead // Module organization 'import/no-default-export': 'off', 'import/prefer-default-export': 'off', 'import/order': ['error', { groups: [ 'builtin', 'external', 'internal', 'parent', 'sibling', 'index' ] }] }, overrides: [ { // Test files have different complexity requirements files: ['tests/**/*.js', '**/*.test.js'], rules: { 'max-statements': 'off', 'no-magic-numbers': 'off', 'require-jsdoc': 'off' } } ] };