rcourtman
7354d8d19f
Keep integration-monitored machines out of Agent Doctor and surface workload-only agents
...
The connections ledger derives agent rows from the unified fabric, which
includes machines whose telemetry comes from platform integrations (vSphere
ESXi hosts, TrueNAS). Agent Doctor rendered every one as a permanent
'Unknown / no structured reason' row, while agents the ledger does not carry
(Docker-only, Kubernetes-only) were silently dropped from the fleet view.
- Expose HostView.IntegrationSource() (source-set based: only SourceAgent
ingest counts, since integration providers fabricate an Agent payload) and
plumb it through models.Host to the connections ledger as the optional
integrationSource field.
- Agent Doctor skips integration-backed connections and appends
diagnostics-only agents, honoring scope, so the doctor covers exactly the
real Pulse Agent fleet.
- Update readiness agent checks no longer count integration-backed machines
as registered agents.
- Humanize doctor copy: plain-language stale message with '10m 2s'-style
durations, offline wording without enum leakage, no 'Supported target:
Unknown' cell when no target is published, host-local command banner only
when a command is actually offered, and a compact non-zero summary strip.
Contracts updated for unified-resources, monitoring, api-contracts,
agent-lifecycle, and dependent storage-recovery; verification via
views_test.go, monitor_host_agents_test.go, state_host_test.go,
contract_test.go, and the frontend connections API test.
2026-07-21 21:24:15 +01:00
..
2026-03-18 16:06:30 +00:00
2026-07-20 22:41:19 +01:00
2026-07-20 19:53:34 +01:00
2026-07-21 21:24:15 +01:00
2026-07-17 16:09:06 +01:00
2026-07-19 15:11:01 +01:00
2026-07-20 20:27:39 +01:00
2026-07-20 20:27:39 +01:00
2025-11-26 23:44:36 +00:00
2025-10-20 15:13:37 +00:00
2026-02-07 22:05:55 +00:00
2026-03-18 16:06:30 +00:00
2026-07-20 07:50:22 +01:00
2026-06-02 14:52:47 +01:00
2026-06-04 14:07:14 +01:00
2026-06-04 14:07:14 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-07-11 18:25:17 +01:00
2026-07-11 18:25:17 +01:00
2025-12-01 17:33:36 +00:00
2026-03-18 16:06:30 +00:00
2026-06-26 11:35:12 +01:00
2026-06-26 11:35:12 +01:00
2026-04-01 19:14:12 +01:00
2026-05-05 14:59:29 +01:00
2026-07-10 00:05:22 +01:00
2026-07-10 00:05:22 +01:00
2026-06-25 20:30:38 +01:00
2026-06-25 20:30:38 +01:00
2026-06-04 10:35:35 +01:00
2026-06-04 10:35:35 +01:00
2026-07-19 09:13:14 +01:00
2026-07-16 20:55:09 +01:00
2026-07-16 20:55:09 +01:00
2026-07-14 12:00:57 +01:00
2026-01-01 22:29:15 +00:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2025-10-14 16:13:53 +00:00
2025-11-12 09:47:02 +00:00
2026-07-02 23:52:02 +01:00
2026-07-02 23:52:02 +01:00
2026-07-10 00:14:01 +01:00
2026-05-19 22:37:55 +01:00
2026-01-28 16:52:35 +00:00
2026-07-13 09:41:11 +01:00
2026-05-05 14:59:29 +01:00
2026-04-22 09:22:46 +01:00
2026-06-04 14:07:14 +01:00
2026-06-04 14:07:14 +01:00
2026-06-27 17:41:00 +01:00
2026-06-27 17:41:00 +01:00
2026-04-01 19:14:12 +01:00
2026-05-05 14:59:29 +01:00
2026-04-01 18:38:42 +01:00
2026-06-04 14:07:14 +01:00
2026-03-18 16:06:30 +00:00
2026-07-03 10:52:18 +01:00
2026-07-03 10:43:28 +01:00
2026-07-07 09:46:51 +01:00
2025-11-26 23:44:36 +00:00
2026-07-20 16:03:29 +01:00
2026-07-21 20:30:54 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-07-14 17:03:14 +01:00
2026-07-16 09:50:04 +01:00
2026-04-11 22:46:34 +01:00
2026-02-04 19:49:52 +00:00
2026-02-04 19:49:52 +00:00
2026-04-12 09:41:29 +01:00
2026-06-11 19:42:40 +01:00
2026-06-11 19:42:40 +01:00
2026-06-10 09:19:51 +01:00
2026-04-01 19:00:48 +01:00
2026-06-09 21:42:21 +01:00
2026-06-12 19:19:16 +01:00
2025-12-01 21:18:33 +00:00
2025-11-27 09:16:53 +00:00
2026-02-04 19:35:19 +00:00
2026-07-20 04:21:26 +01:00
2026-07-20 06:30:55 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-06-03 12:29:37 +01:00
2026-07-20 07:50:22 +01:00
2026-07-20 07:50:22 +01:00
2026-07-20 06:30:55 +01:00
2026-06-09 21:42:21 +01:00
2026-06-09 21:42:21 +01:00
2026-01-22 13:39:06 +00:00
2026-06-04 09:11:07 +01:00
2026-07-20 16:03:29 +01:00
2026-07-20 20:27:39 +01:00
2026-07-20 20:27:39 +01:00
2026-07-20 20:27:39 +01:00
2026-07-20 16:03:29 +01:00
2026-07-20 16:03:29 +01:00
2026-07-17 16:09:06 +01:00
2026-05-05 14:19:50 +01:00
2026-07-18 19:39:56 +01:00
2026-07-09 20:28:52 +01:00
2026-07-20 20:27:39 +01:00
2026-05-05 16:25:00 +01:00
2026-04-19 11:42:53 +01:00
2026-04-19 11:42:53 +01:00
2026-05-01 20:28:12 +01:00
2026-06-04 09:11:07 +01:00
2025-11-18 22:57:20 +00:00
2026-06-11 10:23:49 +01:00
2026-06-23 17:31:37 +01:00
2026-07-15 17:55:26 +01:00
2026-07-02 23:52:02 +01:00
2026-07-20 20:27:39 +01:00
2025-10-20 15:13:38 +00:00
2026-06-14 11:07:47 +01:00
2026-07-20 16:03:29 +01:00
2026-07-21 21:24:15 +01:00
2026-07-03 10:52:18 +01:00
2026-04-01 10:04:30 +01:00
2026-05-01 20:28:12 +01:00
2026-04-11 14:51:10 +01:00
2026-06-09 21:42:21 +01:00
2026-06-11 13:12:59 +01:00
2026-05-25 20:35:58 +01:00
2026-07-12 02:53:01 +01:00
2026-05-13 17:05:03 +01:00
2026-01-04 10:29:40 +00:00
2026-07-18 19:41:53 +01:00
2026-05-08 19:53:03 +01:00
2026-06-14 09:55:56 +01:00
2026-07-03 10:43:28 +01:00
2026-04-01 11:51:19 +01:00
2026-07-16 09:26:53 +01:00
2026-03-18 16:06:30 +00:00
2026-06-11 10:57:22 +01:00
2026-06-10 16:19:24 +01:00
2026-06-10 09:19:51 +01:00
2026-04-01 19:31:50 +01:00
2026-05-13 19:00:02 +01:00
2026-04-01 19:14:12 +01:00
2026-04-01 11:51:19 +01:00
2026-06-10 16:20:35 +01:00
2026-06-10 16:20:35 +01:00
2026-07-11 10:24:45 +01:00
2026-07-13 09:41:11 +01:00
2026-04-01 20:41:56 +01:00
2026-04-21 14:46:23 +01:00
2026-04-21 14:46:23 +01:00
2026-06-04 14:07:14 +01:00
2026-06-04 14:07:14 +01:00
2026-03-18 16:06:30 +00:00
2026-06-04 14:07:14 +01:00
2026-06-11 09:47:42 +01:00
2026-07-21 20:30:54 +01:00
2026-01-04 10:29:40 +00:00
2026-03-18 16:06:30 +00:00
2026-06-04 09:00:30 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-06-04 10:27:59 +01:00
2026-05-17 18:45:24 +01:00
2026-01-05 23:34:33 +00:00
2026-03-18 16:06:30 +00:00
2026-06-11 20:29:13 +01:00
2026-03-18 16:06:30 +00:00
2026-07-21 21:24:15 +01:00
2026-05-05 12:59:59 +01:00
2026-07-16 16:25:10 +01:00
2026-07-21 21:24:15 +01:00
2026-07-16 15:17:45 +01:00
2026-07-20 07:50:22 +01:00
2026-07-20 07:50:22 +01:00
2026-04-01 10:04:30 +01:00
2026-06-27 17:41:00 +01:00
2026-06-27 17:41:00 +01:00
2026-04-11 22:46:34 +01:00
2026-02-07 22:05:55 +00:00
2026-01-14 12:26:18 +00:00
2026-07-19 15:10:38 +01:00
2026-07-19 15:10:38 +01:00
2026-07-18 11:54:09 +01:00
2026-07-18 11:54:09 +01:00
2026-06-10 09:19:51 +01:00
2026-07-16 09:26:53 +01:00
2026-03-18 16:06:30 +00:00
2026-07-13 11:04:09 +01:00
2026-07-13 11:04:09 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-04-01 23:33:43 +01:00
2026-07-19 15:10:38 +01:00
2026-07-19 15:10:38 +01:00
2026-03-26 22:58:27 +00:00
2026-03-31 15:42:16 +01:00
2026-05-28 11:39:30 +01:00
2026-05-28 11:39:30 +01:00
2026-07-03 09:05:12 +01:00
2026-07-16 09:26:53 +01:00
2026-07-16 09:26:53 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-01-06 17:44:52 +00:00
2026-01-06 17:44:52 +00:00
2026-02-04 19:33:29 +00:00
2025-12-02 12:02:13 +00:00
2026-03-18 16:06:30 +00:00
2026-06-11 16:00:25 +01:00
2026-06-11 16:00:25 +01:00
2026-07-14 11:51:55 +01:00
2026-07-14 11:51:55 +01:00
2026-05-22 20:26:56 +01:00
2026-06-10 09:19:51 +01:00