revert(lint): back out the canonical .golangci.yml adoption — repo has a nested module
Adopting it turned CI red, and my pre-push verification missed why: `golangci-lint run ./...` does NOT traverse into nested Go modules. This repo has two — ./go.mod and ./ingestion/go.mod. I linted the root (0 issues, which CI reproduces exactly) and never linted ingestion/, which has 3 findings: ingestion/internal/audit/degrading.go:81 missing case capture.AuditCentral (exhaustive) ingestion/internal/capture/entities.go:37 missing case capture.ZoneUnknown (exhaustive) ingestion/internal/mcp/handlers.go:29 var int_ should be int (revive) Those are behavioural questions and a rename, not formatting — the same class of finding that kept cad, dispatch, ingestion-svc, dma-cli and email-triage-agent out of the earlier waves. Consistent with that, this repo goes back in the queue rather than being force-fitted now. The gofumpt formatting from the same commit is kept: it is independently correct and already green. Verification method corrected going forward: a repo with nested modules must be linted per module, not once from the root.
This commit is contained in:
@@ -1,52 +0,0 @@
|
|||||||
# Canonical golangci-lint configuration for the estate's Go repos (infra#309
|
|
||||||
# pattern: one canonical file here, a byte-identical copy in each adopter,
|
|
||||||
# and the drift gate in THIS repo comparing sha256).
|
|
||||||
#
|
|
||||||
# Why this exists: 26 Go repos, 3 had a lint config, and all three were
|
|
||||||
# different. The 23 without one ran golangci-lint's v2 default set, which
|
|
||||||
# does NOT include a formatter -- so gofmt/gofumpt drift went uncaught until
|
|
||||||
# it was found by hand (dma-cli#12: two files drifted, nothing flagged them).
|
|
||||||
#
|
|
||||||
# The two configs this replaces (cobalt-dingo, coo-agent) were near-identical
|
|
||||||
# copies of each other AND both invalid under v2: they carried v1-style
|
|
||||||
# `linters-settings` and `issues.exclude-rules` keys, which `golangci-lint
|
|
||||||
# config verify` rejects outright. Their revive settings and test exclusions
|
|
||||||
# were therefore not in effect. Consolidating fixes that too.
|
|
||||||
#
|
|
||||||
# Per-repo variation does NOT belong here -- this file must stay byte-identical
|
|
||||||
# across adopters so the gate is a checksum, not a diff a human has to judge.
|
|
||||||
# A repo with a genuine exception (agentsquad excludes its seeded-bug fixture
|
|
||||||
# tree, which exists precisely to contain broken code) keeps its own config and
|
|
||||||
# is not listed as an adopter.
|
|
||||||
|
|
||||||
version: "2"
|
|
||||||
|
|
||||||
linters:
|
|
||||||
default: none
|
|
||||||
enable:
|
|
||||||
- errcheck # unchecked errors
|
|
||||||
- govet # suspicious constructs
|
|
||||||
- staticcheck # broad static analysis
|
|
||||||
- unused # unused code
|
|
||||||
- misspell # spelling
|
|
||||||
- revive # idiomatic Go
|
|
||||||
- exhaustive # exhaustive switch on enums
|
|
||||||
|
|
||||||
settings:
|
|
||||||
revive:
|
|
||||||
rules:
|
|
||||||
- name: var-naming
|
|
||||||
severity: warning
|
|
||||||
|
|
||||||
exclusions:
|
|
||||||
rules:
|
|
||||||
# Test files: table-driven cases legitimately carry unused struct fields
|
|
||||||
# and long functions.
|
|
||||||
- path: _test\.go
|
|
||||||
linters:
|
|
||||||
- revive
|
|
||||||
- unused
|
|
||||||
|
|
||||||
formatters:
|
|
||||||
enable:
|
|
||||||
- gofumpt
|
|
||||||
Reference in New Issue
Block a user