G301/G306 on config files (intentional 0755/0644), G204 on process
exec (necessary), G101 on API key display string, G104 on ShowMenu.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v2 moved issues.exclude-rules to linters.exclusions.rules and
issues.exclude-dirs to linters.exclusions.paths. Enable the
std-error-handling preset for defer Close() patterns.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Suppress known-safe patterns (defer Close, binary.Write, setup CLI)
so the lint job passes without touching unrelated code.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Release pipeline crashed when no prior release existed because
grep returned exit 1 (no match) under set -e. Add || true.
golangci-lint v2 requires a version: "2" field in .golangci.yml.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Reuse a single long-poll HTTP client instead of creating one per
Events() call (~every 30s). Make TLS skip-verify configurable via
syncthing_insecure_tls. Log previously swallowed config errors.
Add unit tests for all monitor trackers, config, and state logic.
Add CI workflow (vet, golangci-lint, govulncheck, go test -race).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>