fix: use sentinel ErrLocationNotFound to satisfy errorlint
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed

Replace errors.New("location not found") string with a package-level
sentinel var so callers can use errors.Is() instead of string comparison,
which errorlint flags as unsafe.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
Head of Product & Engineering 2026-04-06 14:12:36 +02:00
parent 9995027093
commit 671577245a
2 changed files with 6 additions and 2 deletions

View File

@ -3,6 +3,7 @@ package ghl
import ( import (
"context" "context"
"encoding/json" "encoding/json"
"errors"
"io" "io"
"log/slog" "log/slog"
"net/http" "net/http"
@ -153,7 +154,7 @@ func (h *AdminHandler) HandleSetLocationConfig(w http.ResponseWriter, r *http.Re
if err := h.store.UpdateLocationConfig(ctx, locationID, payload.SenderID, payload.CastAPIKey); err != nil { if err := h.store.UpdateLocationConfig(ctx, locationID, payload.SenderID, payload.CastAPIKey); err != nil {
slog.Error("admin: update location config failed", "location_id", locationID, "err", err) slog.Error("admin: update location config failed", "location_id", locationID, "err", err)
if err.Error() == "location not found" { if errors.Is(err, store.ErrLocationNotFound) {
http.Error(w, "location not found", http.StatusNotFound) http.Error(w, "location not found", http.StatusNotFound)
return return
} }

View File

@ -10,6 +10,9 @@ import (
"go.mongodb.org/mongo-driver/v2/mongo/options" "go.mongodb.org/mongo-driver/v2/mongo/options"
) )
// ErrLocationNotFound is returned when a location ID has no stored token record.
var ErrLocationNotFound = errors.New("location not found")
type TokenRecord struct { type TokenRecord struct {
LocationID string `bson:"location_id"` LocationID string `bson:"location_id"`
CompanyID string `bson:"company_id"` CompanyID string `bson:"company_id"`
@ -99,7 +102,7 @@ func (s *Store) UpdateLocationConfig(ctx context.Context, locationID, senderID,
return err return err
} }
if res.MatchedCount == 0 { if res.MatchedCount == 0 {
return errors.New("location not found") return ErrLocationNotFound
} }
return nil return nil
} }