build: always install pinned lint tools in script/bootstrap (closes #117)
needs-rebase
All checks were successful
check / check (push) Successful in 36s
build: isolate golangci-lint cache and lock per checkout (closes #121)
needs-rebase
All checks were successful
check / check (push) Successful in 54s
ci: re-run make check on every cibuild instead of serving it from the layer cache (closes #115)
needs-rebase
All checks were successful
check / check (push) Successful in 43s
server: set ReadTimeout, WriteTimeout, and IdleTimeout (closes #99)
needs-rebase
All checks were successful
check / check (push) Successful in 37s
notify: drain in-flight deliveries at shutdown (closes #106)
needs-rebase
All checks were successful
check / check (push) Successful in 30s
feat: add security response headers middleware (closes #98)
needs-rebase
All checks were successful
check / check (push) Successful in 35s
Remove DNS mocking from tests
needs-rebase
All checks were successful
check / check (push) Successful in 53s
build: update golangci-lint to v2.12.2 with org-standard v2 config
merge-ready
All checks were successful
check / check (push) Successful in 33s
docs: document the no-DNS-mocking policy in README (closes #94)
merge-ready
All checks were successful
check / check (push) Successful in 4s
config: use /var/lib/dnswatcher as default data directory
merge-ready
All checks were successful
check / check (push) Successful in 46s
feat: add retry with exponential backoff for notification delivery
merge-ready
All checks were successful
check / check (push) Successful in 36s
feat: enhance /api/v1/status endpoint with full monitoring data
merge-ready
All checks were successful
check / check (push) Successful in 3s
feat: add DNSWATCHER_SEND_TEST_NOTIFICATION env var
merge-ready
All checks were successful
check / check (push) Successful in 4s
feat: add unauthenticated web dashboard showing monitoring state and recent alerts
merge-ready
All checks were successful
check / check (push) Successful in 4s
test(config): add comprehensive tests for config loading path
merge-ready
All checks were successful
check / check (push) Successful in 43s
test(state): add comprehensive test coverage for internal/state package
merge-ready
All checks were successful
check / check (push) Successful in 51s