checker-sdk-go/checker
Pierre-Olivier Mercier 087032f6cc checker: add DiscoveryPublisher interface for cross-checker discovery
Introduce a DiscoveryEntry struct and an optional DiscoveryPublisher
interface that providers can co-implement to declare things worth
probing by other checkers (TLS endpoints, HTTP probes, ACME challenges,
DNSSEC keys, ...) without having to re-parse raw observations.

DiscoveryEntry carries an opaque Payload: the SDK does not interpret
it. Producers and consumers agree on the Payload schema through a
separate contract (eg. a small shared Go package imported by
both) identified by the free-form Type string. This keeps the SDK
free of protocol-specific concepts; new entry families can appear
without touching it.

The /collect HTTP handler type-asserts the provider against
DiscoveryPublisher immediately after Collect and forwards the
resulting entries in ExternalCollectResponse.Entries.
2026-04-22 16:50:59 +07:00
..
options.go Initial commit 2026-04-08 00:53:15 +07:00
options_test.go tests: add coverage for options, types, and HTTP server 2026-04-10 16:35:50 +07:00
registry.go registry: reject checker registration with empty ID 2026-04-10 16:24:39 +07:00
registry_test.go tests: add coverage for options, types, and HTTP server 2026-04-10 16:35:50 +07:00
server.go checker: add DiscoveryPublisher interface for cross-checker discovery 2026-04-22 16:50:59 +07:00
server_test.go server: expose runtime metrics on /health for scheduler routing 2026-04-16 16:52:00 +07:00
types.go checker: add DiscoveryPublisher interface for cross-checker discovery 2026-04-22 16:50:59 +07:00
types_test.go Revert "checker: reorder Status with negatives for good, JSON as string" 2026-04-16 00:50:23 +07:00