Commit graph

  • 31bd6c3228 feat: add retry with exponential backoff for notification delivery feature/62-notification-retry-backoff clawbot 2026-03-10 11:11:32 -07:00
  • b64db3e10f feat: enhance /api/v1/status endpoint with full monitoring data (#86) main clawbot 2026-03-10 12:20:11 +01:00
  • 65180ad661 feat: add DNSWATCHER_SEND_TEST_NOTIFICATION env var (#85) clawbot 2026-03-04 21:41:55 +01:00
  • 1076543c23 feat: add unauthenticated web dashboard showing monitoring state and recent alerts (#83) clawbot 2026-03-04 13:03:38 +01:00
  • 1843d09eb3 test(notify): add comprehensive tests for notification delivery (#79) clawbot 2026-03-04 11:26:31 +01:00
  • c5bf16055e test(state): add comprehensive test coverage for internal/state package (#80) clawbot 2026-03-04 11:26:05 +01:00
  • d6130e5892 test(config): add comprehensive tests for config loading path (#81) clawbot 2026-03-04 11:23:24 +01:00
  • 0a74971ade docs: fix README inaccuracies found during QA audit (#74) clawbot 2026-03-02 08:40:42 +01:00
  • e882e7d237 feat: fail fast when no monitoring targets configured (#75) clawbot 2026-03-02 01:26:55 +01:00
  • 713a2b7332 config: fail fast when DNSWATCHER_TARGETS is empty fix/empty-targets-validation user 2026-03-01 16:22:27 -08:00
  • 83643f84ab feat: implement GET /api/v1/domains and /api/v1/hostnames endpoints fix/67-readme-api-endpoints clawbot 2026-03-01 16:07:07 -08:00
  • 6ebc4ffa04 fix: use context.Background() for watcher goroutine lifetime (#63) clawbot 2026-03-02 00:39:08 +01:00
  • b20e75459f fix: track multiple hostnames per IP:port in port state (#65) clawbot 2026-03-02 00:32:27 +01:00
  • ee14bd01ae fix: enforce DNS-first ordering for port and TLS checks (#64) clawbot 2026-03-02 00:10:49 +01:00
  • 2835c2dc43 REPO_POLICIES compliance audit (#40) clawbot 2026-03-01 21:11:49 +01:00
  • 299a36660f fix: 700ms query timeout, proper iterative resolution (closes #24) (#28) clawbot 2026-03-01 21:10:38 +01:00
  • 4dede6af9d update README: reference REPO_POLICIES.md, add License/Author sections, document new Makefile targets fix/issue-39-repo-policies clawbot 2026-03-01 07:56:09 -08:00
  • b84c2f3b34 remove CLAUDE.md and CONVENTIONS.md, replaced by REPO_POLICIES.md clawbot 2026-03-01 07:56:05 -08:00
  • a65a14b8ec add fmt-check, hooks, docker targets; add 30s test timeout clawbot 2026-03-01 07:56:01 -08:00
  • b7b9629bc3 add missing files: LICENSE, REPO_POLICIES.md, .editorconfig, .dockerignore clawbot 2026-03-01 07:55:57 -08:00
  • 02ca796085 Merge pull request 'Simplify CI: docker build instead of manual toolchain setup' (#38) from fix/simplify-ci into main Jeffrey Paul 2026-02-28 13:04:31 +01:00
  • 2e3526986f simplify CI to docker build, pin all image refs by SHA clawbot 2026-02-28 03:54:11 -08:00
  • 55c6c21b5a Merge pull request 'fix: distinguish timeout from negative DNS responses (closes #35)' (#37) from fix/timeout-vs-negative-response into main Jeffrey Paul 2026-02-28 12:38:18 +01:00
  • 2993911883 fix: distinguish timeout from negative DNS responses (closes #35) clawbot 2026-02-28 03:27:14 -08:00
  • 70fac87254 Merge pull request 'fix: remove ErrNotImplemented stub — all checks fully implemented (closes #16)' (#23) from fix/remove-unimplemented-stubs into main Jeffrey Paul 2026-02-28 12:26:27 +01:00
  • f2970143d2 fix: retry on DNS timeout, distinguish authoritative negatives (closes #35) fix/issue-35-retry-timeout clawbot 2026-02-28 03:22:57 -08:00
  • 940f7c89da Merge branch 'main' into fix/remove-unimplemented-stubs Jeffrey Paul 2026-02-28 12:09:24 +01:00
  • 0eb57fc15b Merge pull request 'fix: look up A/AAAA records for apex domains to enable port/TLS checks (closes #19)' (#21) from fix/domain-port-tls-state-lookup into main Jeffrey Paul 2026-02-28 12:09:04 +01:00
  • 5739108dc7 Merge branch 'main' into fix/domain-port-tls-state-lookup Jeffrey Paul 2026-02-28 12:08:56 +01:00
  • 54272c2be5 Merge pull request 'fix: deduplicate TLS expiry warnings to prevent notification spam (closes #18)' (#22) from fix/tls-expiry-dedup into main Jeffrey Paul 2026-02-28 12:08:46 +01:00
  • 7d380aafa4 Merge branch 'main' into fix/remove-unimplemented-stubs Jeffrey Paul 2026-02-28 12:08:35 +01:00
  • b18d29d586 Merge branch 'main' into fix/domain-port-tls-state-lookup Jeffrey Paul 2026-02-28 12:08:25 +01:00
  • e63241cc3c Merge branch 'main' into fix/tls-expiry-dedup Jeffrey Paul 2026-02-28 12:08:19 +01:00
  • 5ab217bfd2 Merge pull request 'Reduce DNS query timeout and limit root server fan-out (closes #29)' (#30) from fix/reduce-dns-timeout-and-root-fanout into main Jeffrey Paul 2026-02-28 12:07:20 +01:00
  • 518a2cc42e Merge pull request 'doc: add TESTING.md — real DNS only, no mocks' (#34) from doc/testing-policy into main Jeffrey Paul 2026-02-28 12:06:57 +01:00
  • 4cb81aac24 doc: add testing policy — real DNS only, no mocks user 2026-02-22 04:28:47 -08:00
  • 889855306f fix: mock DNS in resolver tests for deterministic fast suite fix/mock-resolver-tests clawbot 2026-02-22 04:25:33 -08:00
  • 63c79c0bad resolver: reduce query timeout to 1s and limit root fan-out to 3 (closes #29) fix/dns-timeout-and-root-fanout clawbot 2026-02-22 03:36:17 -08:00
  • 203b581704 Reduce DNS query timeout to 2s and limit root server fan-out to 3 user 2026-02-22 03:35:16 -08:00
  • cc35480e26 fix: set 700ms query timeout, use public resolvers for recursive queries fix/query-timeout-and-recursive-resolution user 2026-02-21 02:54:56 -08:00
  • a2819c34d9 fix: skip real-DNS resolver tests in make check, add timeout fix/make-check-resolver-tests user 2026-02-21 02:37:38 -08:00
  • 8cfff5dcc8 Merge pull request 'fix: use full Lock in State.Save() to prevent data race (closes #17)' (#20) from fix/state-save-data-race into main Jeffrey Paul 2026-02-21 11:22:46 +01:00
  • d0220e5814 fix: remove ErrNotImplemented stub — resolver, port, and TLS checks are fully implemented (closes #16) clawbot 2026-02-21 00:55:38 -08:00
  • 82fd68a41b fix: deduplicate TLS expiry warnings to prevent notification spam (closes #18) clawbot 2026-02-21 00:54:59 -08:00
  • f8d0dc4166 fix: look up A/AAAA records for apex domains to enable port/TLS checks (closes #19) clawbot 2026-02-21 00:53:42 -08:00
  • b162ca743b fix: use full Lock in State.Save() to prevent data race (closes #17) fix/state-save-data-race clawbot 2026-02-21 00:51:58 -08:00
  • 622acdb494 Merge pull request 'feat: implement TCP port connectivity checker (closes #3)' (#6) from feature/portcheck-implementation into main Jeffrey Paul 2026-02-20 19:38:37 +01:00
  • 4d4f74d1b6 Merge pull request 'feat: implement iterative DNS resolver (closes #1)' (#9) from feature/resolver into main Jeffrey Paul 2026-02-20 19:37:59 +01:00
  • 617270acba Merge pull request 'feat: implement TLS certificate inspector (closes #4)' (#7) from feature/tlscheck-implementation into main Jeffrey Paul 2026-02-20 19:36:39 +01:00
  • 687027be53 test: add tests for no-peer-certificates error path clawbot 2026-02-19 23:55:17 -08:00
  • 54b00f3b2a fix: return error for no peer certs, include IP SANs user 2026-02-19 23:51:55 -08:00
  • 3fcf203485 fix: resolve gosec SSRF findings and formatting issues clawbot 2026-02-19 23:44:06 -08:00
  • 8770c942cb feat: implement TLS certificate inspector (closes #4) clawbot 2026-02-19 13:45:47 -08:00
  • 9ef0d35e81 resolver: remove DNS mocking, use real DNS queries in tests clawbot 2026-02-20 06:06:25 -08:00
  • 9e4f194c4c style: fix formatting in resolver.go user 2026-02-20 03:45:17 -08:00
  • 0486dcfd07 fix: mock DNS in resolver tests for hermetic, fast unit tests clawbot 2026-02-20 00:17:23 -08:00
  • 1e04a29fbf fix: format resolver_test.go with goimports clawbot 2026-02-19 23:49:27 -08:00
  • 04855d0e5f feat: implement iterative DNS resolver clawbot 2026-02-19 14:15:02 -08:00
  • e92d47f052 Add resolver API definition and comprehensive test suite sneak 2026-02-19 22:22:58 +01:00
  • 4394ea9376 Merge pull request 'fix: suppress gosec G704 SSRF false positive on webhook URLs' (#13) from fix/gosec-g704-ssrf into main Jeffrey Paul 2026-02-20 14:56:21 +01:00
  • 59ae8cc14a Merge pull request 'ci: add Gitea Actions workflow for make check' (#14) from ci/make-check into main Jeffrey Paul 2026-02-20 14:55:07 +01:00
  • c9c5530f60 security: pin all go install refs to commit SHAs clawbot 2026-02-20 03:10:39 -08:00
  • b2e8ffe5e9 security: pin CI actions to commit SHAs user 2026-02-20 02:58:07 -08:00
  • ae936b3365 ci: add Gitea Actions workflow for make check user 2026-02-20 02:48:13 -08:00
  • bf8c74c97a fix: resolve gosec G704 SSRF findings without suppression fix/gosec-g704-ssrf user 2026-02-20 00:21:41 -08:00
  • 57cd228837 feat: make CheckPorts concurrent and add port validation user 2026-02-20 00:14:55 -08:00
  • ab39e77015 feat: implement TCP port connectivity checker (closes #3) clawbot 2026-02-19 13:44:20 -08:00
  • e185000402 Merge pull request 'feat: implement watcher monitoring orchestrator (closes #2)' (#8) from feature/watcher-implementation into main Jeffrey Paul 2026-02-20 09:06:42 +01:00
  • d5738d6d43 Merge branch 'main' into feature/watcher-implementation feature/watcher-implementation Jeffrey Paul 2026-02-20 09:06:27 +01:00
  • 5e4631776a Merge pull request 'feat: unify DOMAINS/HOSTNAMES into single TARGETS config (closes #10)' (#11) from feature/unified-targets into main Jeffrey Paul 2026-02-20 09:04:59 +01:00
  • f8d5a8f6cc fix: resolve gosec SSRF findings and formatting issues feature/unified-targets clawbot 2026-02-19 23:43:42 -08:00
  • e09135d9d9 fix: resolve gosec SSRF findings and formatting issues clawbot 2026-02-19 23:42:50 -08:00
  • 73e01c7664 feat: unify DOMAINS/HOSTNAMES into single TARGETS config clawbot 2026-02-19 20:08:11 -08:00
  • f676cc9458 feat: implement watcher monitoring orchestrator clawbot 2026-02-19 13:48:46 -08:00
  • dea30028b1 test: add watcher orchestrator tests with mock dependencies clawbot 2026-02-19 13:48:38 -08:00
  • 144a2df665 Initial scaffold with per-nameserver DNS monitoring model sneak 2026-02-19 21:05:39 +01:00