From 799f7b464633ff99fec71c42ddc652ee4dcc0769 Mon Sep 17 00:00:00 2001 From: Mohammad Dashti Date: Mon, 15 Jun 2026 10:48:37 -0700 Subject: [PATCH] Built SUM final result in each branch directly. Keeps the empty-bucket coercion visible at the boundary instead of a shared binding, following the reviewer's suggested shape. --- src/aggregation/intermediate_agg_result.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/aggregation/intermediate_agg_result.rs b/src/aggregation/intermediate_agg_result.rs index 9eb5b0e42..e8186362b 100644 --- a/src/aggregation/intermediate_agg_result.rs +++ b/src/aggregation/intermediate_agg_result.rs @@ -387,12 +387,12 @@ impl IntermediateMetricResult { .and_then(|sum| sum.none_if_no_match) .unwrap_or(false); let value = intermediate_sum.finalize(); - let coerced = if none_if_no_match { - value + if none_if_no_match { + MetricResult::Sum(value.into()) } else { - Some(value.unwrap_or(0.0)) - }; - MetricResult::Sum(coerced.into()) + let value = Some(value.unwrap_or(0.0)); + MetricResult::Sum(value.into()) + } } IntermediateMetricResult::Percentiles(percentiles) => MetricResult::Percentiles( percentiles