Pulse/internal/servicediscovery
rcourtman fa3f57e6ba fix(discovery): backfill availability suggestions for existing discoveries
The refreshSuggestedAvailabilityProbeFromState method existed but was
never called, so existing discovery records never received availability
probe suggestions. This adds backfillAvailabilitySuggestions which:

- Triggers from SetReadState (goroutine) and runDiscoveryLoop (ticker)
- Retries with exponential backoff when the state snapshot is empty,
  waiting for the monitor to populate Proxmox data before proceeding
- Matches containers by VMID only (was VMID+Node, which failed in
  clusters where the discovery targetID differs from the container's
  node)

Also extends SuggestAvailabilityProbe with a hostname fallback: when
ServiceType is empty (deep scan not yet run), checks the discovery's
Hostname against webServiceDefaults/tcpServiceDefaults. This covers
containers like jellyfin, grafana, frigate, esphome, zigbee2mqtt,
homeassistant, mqtt, etc. in environments where background AI is
disabled.

Adds zigbee2mqtt and ntfy to webServiceDefaults.
2026-06-26 23:56:15 +01:00
..
availability_suggestion.go fix(discovery): backfill availability suggestions for existing discoveries 2026-06-26 23:56:15 +01:00
availability_suggestion_test.go feat(discovery): suggest availability probes from discovered service types 2026-06-26 17:12:11 +01:00
commands.go Detect nested-container access topology in discovery 2026-06-07 21:39:22 +01:00
commands_test.go Make discovery a fast surface scan, not a deep scan 2026-06-07 20:54:46 +01:00
deep_scanner.go Route hostname lookups through canonical equivalence 2026-04-21 22:47:23 +01:00
deep_scanner_test.go feat: Pulse v6 release 2026-03-18 16:06:30 +00:00
fingerprint.go feat: Pulse v6 release 2026-03-18 16:06:30 +00:00
formatters.go Add discovery freshness to the local/full context formatter 2026-06-09 10:58:38 +01:00
formatters_test.go Add discovery freshness to the local/full context formatter 2026-06-09 10:58:38 +01:00
readiness.go Add discovery readiness to Assistant context 2026-06-04 21:56:36 +01:00
readiness_test.go Add discovery readiness to Assistant context 2026-06-04 21:56:36 +01:00
scenario_corpus_test.go Add Kubernetes (kubectl exec) cell to the Discovery oracle 2026-06-07 15:23:25 +01:00
service.go fix(discovery): backfill availability suggestions for existing discoveries 2026-06-26 23:56:15 +01:00
service_identity.go Add distinctive-port fast-path for un-named workloads 2026-06-07 21:52:41 +01:00
service_identity_test.go Add distinctive-port fast-path for un-named workloads 2026-06-07 21:52:41 +01:00
service_test.go Canonicalize Proxmox-guest discovery records to the node-name key 2026-06-09 14:33:12 +01:00
store.go Remove 198 unreachable Go functions 2026-06-03 12:29:37 +01:00
store_test.go Remove 198 unreachable Go functions 2026-06-03 12:29:37 +01:00
tools_adapter.go Implement Discovery observed context UX 2026-05-20 13:21:55 +01:00
tools_adapter_test.go Implement Discovery observed context UX 2026-05-20 13:21:55 +01:00
types.go feat(discovery): suggest availability probes from discovered service types 2026-06-26 17:12:11 +01:00
types_test.go feat: Pulse v6 release 2026-03-18 16:06:30 +00:00
url_suggestion.go fix(discovery): backfill availability suggestions for existing discoveries 2026-06-26 23:56:15 +01:00
url_suggestion_test.go Make workload discovery repair known service results 2026-06-05 09:21:53 +01:00