From b147fa2f3108a322bb8a3d21175840783bb802da Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Thu, 16 Apr 2026 04:43:40 +0700 Subject: [PATCH] Handle empty targets case in Evaluate with StatusUnknown --- checker/evaluate.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/checker/evaluate.go b/checker/evaluate.go index f07c543..8cef1aa 100644 --- a/checker/evaluate.go +++ b/checker/evaluate.go @@ -67,7 +67,18 @@ const ( ) // Evaluate checks the ping data against the given thresholds. +// StatusUnknown indicates the check could not be performed. +const StatusUnknown = 0 + func Evaluate(data *PingData, warningRTT, criticalRTT, warningPacketLoss, criticalPacketLoss float64) EvaluateResult { + if len(data.Targets) == 0 { + return EvaluateResult{ + Status: StatusUnknown, + Message: "No targets to ping", + Code: "ping_no_targets", + } + } + overallStatus := StatusOK var summaryParts []string