mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-07-09 16:00:59 +00:00
When a deep scan was attempted for a workload (container/VM) but produced no command output — e.g. the host agent rejects exec — the AI analyzer was still asked to identify the service from metadata alone. It confabulated confident, false identities: an ESPHome LXC and an influxdb-telegraf LXC were both "identified" as Pi-hole at 0.95 confidence, with invented facts carrying fabricated command sources (source: "pihole -v" for a command that never ran) and a docker exec CLI for an LXC. When a command scan was attempted for a command-dependent resource type but yielded nothing, abstain: skip the analyzer entirely and return a not-determined result (no service, no facts, zero confidence) with guidance to enable Pulse Commands. Host agents are unaffected (identified from their own metadata), and deployments without command scanning keep the metadata-only path. Abstaining also avoids a wasted model call. Verified live: re-running discovery on the esphome LXC now returns an empty, zero-confidence result with the correct container CLI instead of fabricated Pi-hole facts. Adds a regression test. |
||
|---|---|---|
| .. | ||
| commands.go | ||
| commands_test.go | ||
| deep_scanner.go | ||
| deep_scanner_test.go | ||
| fingerprint.go | ||
| formatters.go | ||
| formatters_test.go | ||
| readiness.go | ||
| readiness_test.go | ||
| service.go | ||
| service_identity.go | ||
| service_test.go | ||
| store.go | ||
| store_test.go | ||
| tools_adapter.go | ||
| tools_adapter_test.go | ||
| types.go | ||
| types_test.go | ||
| url_suggestion.go | ||
| url_suggestion_test.go | ||