From 675f765cc07056dfc175dbb6da59695619a38a55 Mon Sep 17 00:00:00 2001 From: Head of Product & Engineering Date: Sun, 5 Apr 2026 21:22:03 +0200 Subject: [PATCH] fix: resolve golangci-lint failures and .gitignore scope issue - cmd/server/main.go: acknowledge w.Write return value (errcheck) - internal/store/mongo.go: use errors.Is for ErrNoDocuments (errorlint) - .golangci.yml: add linter config scoped to relevant linters - .gitignore: scope /server to root only (was blocking cmd/server/ directory) Co-Authored-By: Paperclip --- .gitignore | 4 ++-- .golangci.yml | 25 +++++++++++++++++++++++++ cmd/server/main.go | 2 +- internal/store/mongo.go | 3 ++- 4 files changed, 30 insertions(+), 4 deletions(-) create mode 100644 .golangci.yml diff --git a/.gitignore b/.gitignore index de53e0b..d6eef0e 100644 --- a/.gitignore +++ b/.gitignore @@ -2,5 +2,5 @@ cast-ghl-provider /tmp/ -# compiled binary (root) -server +# compiled binary (root-level only, not cmd/server/ directory) +/server diff --git a/.golangci.yml b/.golangci.yml new file mode 100644 index 0000000..baaa673 --- /dev/null +++ b/.golangci.yml @@ -0,0 +1,25 @@ +linters: + enable: + - errcheck + - govet + - staticcheck + - gosimple + - ineffassign + - unused + - errorlint + - gocritic + - revive + +linters-settings: + revive: + rules: + - name: exported + disabled: true + +issues: + exclude-rules: + # Test files can use dot-imports and assertion helpers freely + - path: _test\.go + linters: + - errcheck + - gocritic diff --git a/cmd/server/main.go b/cmd/server/main.go index 18531a5..1d8e2d7 100644 --- a/cmd/server/main.go +++ b/cmd/server/main.go @@ -85,5 +85,5 @@ func main() { func healthCheck(w http.ResponseWriter, r *http.Request) { w.Header().Set("Content-Type", "application/json") w.WriteHeader(http.StatusOK) - w.Write([]byte(`{"status":"ok","service":"cast-ghl-provider"}`)) + _, _ = w.Write([]byte(`{"status":"ok","service":"cast-ghl-provider"}`)) } diff --git a/internal/store/mongo.go b/internal/store/mongo.go index 82d079e..5966b23 100644 --- a/internal/store/mongo.go +++ b/internal/store/mongo.go @@ -2,6 +2,7 @@ package store import ( "context" + "errors" "time" "go.mongodb.org/mongo-driver/v2/bson" @@ -61,7 +62,7 @@ func (s *Store) GetToken(ctx context.Context, locationID string) (*TokenRecord, filter := bson.D{{Key: "location_id", Value: locationID}} var record TokenRecord err := s.collection.FindOne(ctx, filter).Decode(&record) - if err == mongo.ErrNoDocuments { + if errors.Is(err, mongo.ErrNoDocuments) { return nil, nil } if err != nil {