1# SPDX-FileCopyrightText: Amolith <amolith@secluded.site>
2#
3# SPDX-License-Identifier: CC0-1.0
4
5version: "2"
6linters:
7 default: none
8 # Be specific
9 enable:
10 - arangolint
11 - asasalint
12 - asciicheck
13 - bidichk
14 - bodyclose
15 - canonicalheader
16 - containedctx
17 - contextcheck
18 - copyloopvar
19 - cyclop
20 - decorder
21 - dogsled
22 - dupl
23 - dupword
24 - durationcheck
25 - embeddedstructfieldcheck
26 - err113
27 - errcheck
28 - errchkjson
29 - errname
30 - errorlint
31 - exhaustive
32 - exptostd
33 - fatcontext
34 - forbidigo
35 - forcetypeassert
36 - funcorder
37 - funlen
38 - ginkgolinter
39 - gocheckcompilerdirectives
40 - gochecknoglobals
41 - gochecknoinits
42 - gochecksumtype
43 - gocognit
44 - goconst
45 - gocritic
46 - gocyclo
47 - godoclint
48 - godot
49 - godox
50 - goheader
51 - gomoddirectives
52 - gomodguard
53 - goprintffuncname
54 - gosec
55 - gosmopolitan
56 - govet
57 - grouper
58 - iface
59 - importas
60 - inamedparam
61 - ineffassign
62 - interfacebloat
63 - intrange
64 - iotamixing
65 - ireturn
66 - lll
67 - loggercheck
68 - maintidx
69 - makezero
70 - mirror
71 - misspell
72 - mnd
73 - musttag
74 - nakedret
75 - nestif
76 - nilerr
77 - nilnesserr
78 - nilnil
79 - nlreturn
80 - noctx
81 - nolintlint
82 - nonamedreturns
83 - nosprintfhostport
84 - paralleltest
85 - perfsprint
86 - prealloc
87 - predeclared
88 - promlinter
89 - protogetter
90 - reassign
91 - recvcheck
92 - revive
93 - rowserrcheck
94 - sloglint
95 - spancheck
96 - sqlclosecheck
97 - staticcheck
98 - tagalign
99 - tagliatelle
100 - testableexamples
101 - testifylint
102 - testpackage
103 - thelper
104 - tparallel
105 - unconvert
106 - unparam
107 - unqueryvet
108 - unused
109 - usestdlibvars
110 - usetesting
111 - varnamelen
112 - wastedassign
113 - whitespace
114 - wrapcheck
115 - wsl_v5
116 - zerologlint
117 - prealloc
118
119 disable:
120 - depguard
121 - noinlineerr
122
123 settings:
124 tagliatelle:
125 case:
126 rules:
127 json: snake
128 varnamelen:
129 ignore-names:
130 - c # client
131 - f # file handle
132 - id # entity ID
133 - ok # boolean check
134 - db # database
135 - tx # transaction
136 - fn # function
137
138 exclusions:
139 rules:
140 - path: cmd/
141 linters:
142 - gochecknoglobals # Cobra commands are package-level vars
143 - gochecknoinits # Cobra uses init() for flag registration
144 - errcheck # Stub implementations print without checking
145 - godox # TODOs are intentional placeholders
146 - wrapcheck # CLI returns errors for display, wrapping adds noise
147 - mnd # Magic numbers in cobra.ExactArgs are clear in context
148 - dupl # Builder types differ but share method signatures
149 - path: cmd/
150 text: unused-parameter # Cobra callback signatures can't be changed
151 - path: internal/mcp/
152 linters:
153 - nilerr # MCP handlers return errors in result, not as Go error
154 - path: internal/ui/
155 linters:
156 - gochecknoglobals # Style constants are package-level vars
157 - ireturn # Generic spinner helper uses type params
158 - path: internal/config/
159 text: "0o700" # Config directory permissions are intentional