version: "2" run: timeout: 5m modules-download-mode: readonly linters: default: all disable: # Genuinely incompatible with project patterns - exhaustruct # Requires all struct fields - exhaustruct_v5 # Same linter, newer major version (since v2.13.0) - depguard # Dependency allow/block lists - godot # Requires comments to end with periods - wsl # Deprecated, replaced by wsl_v5 - gomodguard # Deprecated, replaced by gomodguard_v2 - wrapcheck # Too verbose for internal packages - varnamelen # Short names like db, id are idiomatic Go settings: lll: line-length: 88 funlen: lines: 80 statements: 50 cyclop: max-complexity: 15 dupl: threshold: 100 # No default exclusions: v2 applies none unless linters.exclusions.presets # is set, which replaces v1's exclude-use-default: false. issues: max-issues-per-linter: 0 max-same-issues: 0