diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..cb9f2a1 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,46 @@ +# Changelog + +## [2026.05.2] — 2026-05-23 + +### Added +- Comprehensive test suite (94 tests across monitor, server, cluster) +- golangci-lint config with CI enforcement +- Gitea Actions CI pipeline (test + lint) +- Graceful shutdown for HTTP and SSH servers +- Context-aware alert delivery with timeout +- Request size limits on all POST endpoints +- Constant-time secret comparison +- Check interval jitter to prevent thundering herd +- `--version` flag with build metadata injection + +### Fixed +- Silent JSON unmarshal failures in alert settings +- Panic on crypto/rand failure replaced with error return +- Alert delivery errors now logged instead of swallowed +- log.Fatalf in goroutines replaced with log.Printf +- Deprecated LineUp/LineDown API calls + +### Security +- Cluster secret compared with crypto/subtle (timing-safe) +- http.MaxBytesReader on all JSON endpoints +- ReadHeaderTimeout added to HTTP server + +## [2026.05.1] — 2026-05-14 + +### Added +- Distributed probing with leader + probe nodes +- Config-as-code (YAML apply/export with dry-run, prune) +- TUI visual polish (zebra striping, sparklines, breadcrumbs) +- Incident management and maintenance windows +- 9 alert providers (Discord, Slack, Email, Ntfy, Telegram, PagerDuty, Pushover, Gotify, Webhook) + +## [2026.04.1] — Initial independent fork + +### Added +- SSH-accessible TUI (Bubble Tea + Wish) +- 6 check types (HTTP, Push, Ping, Port, DNS, Group) +- SQLite and PostgreSQL support +- HA clustering with automatic failover +- Prometheus metrics endpoint +- Public status page +- Uptime Kuma import