From 154782660cabb5ae8d313e6348efe747bb5e9d16 Mon Sep 17 00:00:00 2001 From: cyberslack_lee Date: Thu, 9 Jul 2026 14:41:33 +0800 Subject: [PATCH] fix: fix rand.init(0) panic in failover.go (#4112) --- plugins/wasm-go/extensions/ai-proxy/provider/failover.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/plugins/wasm-go/extensions/ai-proxy/provider/failover.go b/plugins/wasm-go/extensions/ai-proxy/provider/failover.go index fa3076f31..d80ca9b5b 100644 --- a/plugins/wasm-go/extensions/ai-proxy/provider/failover.go +++ b/plugins/wasm-go/extensions/ai-proxy/provider/failover.go @@ -649,6 +649,10 @@ func (c *ProviderConfig) GetGlobalRandomToken() string { count := len(apiTokens) switch count { case 0: + if len(unavailableApiTokens) == 0 { + log.Warn("all tokens are unavailable and no unavailable tokens recorded") + return "" + } log.Warn("all tokens are unavailable, will use random one of the unavailable tokens") return unavailableApiTokens[rand.Intn(len(unavailableApiTokens))] case 1: