Description
Parity floor from doc-0004: per-collector poll counters, durations, last-success timestamps, cursor lag, export outcomes, build info; /healthz on loopback; CLI modes.
Acceptance Criteria
- #1 Flags: -config, -version, -healthcheck, -validate, -print-effective-config, -once, -dry-run, -since/-before window override, -datasets selection, -reset-state, and an explore mode that prints a dataset and names a missing permission on 403
- #2 Poll interval clamped to a floor; one failing collector never stops the others
- #3 Config-file permission advisory (0600, owned by the runtime UID) as in tailscale2otel
Definition of Done
- #1 just check (fmt-check, lint, vet, test, tidy-check, build, vuln)
- #2 just ci before a change that touches the Dockerfile, goreleaser or the image (adds snapshot + image)
- #3 Every new signal or attribute name declared in internal/semconv and listed in docs/signals.md
Implementation Notes
CLI parse, interval, permission advisory and health tests passed in exact CI 35875578089. Camden container healthy; self-observability metric families visible in Mimir.
Final Summary
CLI, loopback health and self-observability released; tests and live health verified.