From 70de22e419a8cd44e45f50147b3499718edd4d00 Mon Sep 17 00:00:00 2001 From: Veeral Patel Date: Thu, 9 Jul 2026 11:58:28 -0700 Subject: [PATCH] Add scale_decisions to WorkerPollerInfo Adds a per-poller-type breakdown of poller autoscaler scale decisions since the last heartbeat (keyed by reason, e.g. server_up, server_up_suppressed, empty_poll_down, re_halve) to the worker heartbeat, so scaling behavior is observable server-side without a metrics pipeline. --- temporal/api/worker/v1/message.proto | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/temporal/api/worker/v1/message.proto b/temporal/api/worker/v1/message.proto index a87142c78..b8e06c904 100644 --- a/temporal/api/worker/v1/message.proto +++ b/temporal/api/worker/v1/message.proto @@ -22,6 +22,11 @@ message WorkerPollerInfo { // Set true if the number of concurrent pollers is auto-scaled bool is_autoscaling = 3; + + // Counts of poller autoscaler scale decisions since the last heartbeat, keyed by + // reason (e.g. "server_up", "server_up_suppressed", "empty_poll_down", "re_halve"). + // Only set when the poller count is auto-scaled. + map scale_decisions = 4; } message WorkerSlotsInfo {