admin
23611c20ef
chore(hub): revert incidental gofmt-only reformatting outside slice-3 scope
...
Restores notify/templates.go, store/telemetry.go, web/configs.go to upstream —
those were alignment-only churn from a tree-wide gofmt, not part of slice 3. Keeps
the host-domain diff additions-only.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-08 16:38:18 +02:00
admin
7c0c75457f
feat(hub): host-domain ingest — tables + /host-report + per-host auth + host dead-man's-switch (v0.7.0, slice 3)
...
Purely additive; the controller path (reports/customer_configs/checkAuthCustomer/
existing checkers) is untouched. Cutover remains slice 10.
- store: new hosts/guests/host_reports tables (full schema incl. columns INERT
until slice 10, so no later ALTER); GetHostByAPIKey/GetHost/ListHosts/UpsertHost/
SaveHostReport/UpsertGuestFromReport (preserves inert cols)/GetHostStaleness/
GuestID; Prune also prunes host_reports.
- api: checkAuthHost (sibling of checkAuthCustomer); POST /host-report (per-host
Bearer, 4MiB, denorm + guest upsert, control envelope); POST /admin/hosts
(PROVISIONAL global-key host mint); host_* event types registered.
- monitor: HostStalenessChecker sibling over host_reports (host_stale/down/
recovered), wired on the existing 60s ticker; controller checkers unchanged.
- tests (hermetic): store intent/inert-column preservation, auth, ingest
(envelope+denorm, mismatch/unknown/blocked/oversize), admin mint round-trip,
host staleness transitions.
CHANGELOG v0.7.0. Contract matches the agent host-report spec field-for-field.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-08 16:36:16 +02:00
admin
3217cb4751
feat: Hub monitoring takeover — event system, dead man's switch, notifications (v0.3.0)
...
Replace external Healthchecks.io with Hub-native monitoring. New events
table + /api/v1/event endpoint for structured events from controllers.
Staleness checker (60s) detects unresponsive nodes. Backup deadline
checker (daily 05:00) catches missed backups. Notification dispatcher
sends operator (English) + customer (Hungarian) emails via Resend with
per-event cooldowns. Event timeline on customer page, dashboard badges.
Config form deprecates Monitoring UUIDs section.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-20 18:53:24 +01:00