Merge pull request #6193 from antTing/codex/fix-channel-monitor-v2-nullif

fix(channel-monitor-v2): fix composite platform aggregation SQL
This commit is contained in:
Wesley Liddick
2026-08-25 21:26:32 +08:00
committed by GitHub
2 changed files with 3 additions and 1 deletions
@@ -255,7 +255,7 @@ WITH dedup AS (
-- group errors aggregate under platform 'composite', which is never an
-- enabled config platform, and are filtered out of every monitor v2 query.
lower(CASE
WHEN g.platform = 'composite' THEN COALESCE(NULLIF(TRIM(a.platform)), NULLIF(NULLIF(lower(TRIM(current_error.platform)), ''), 'composite'), 'unknown')
WHEN g.platform = 'composite' THEN COALESCE(NULLIF(TRIM(a.platform), ''), NULLIF(NULLIF(lower(TRIM(current_error.platform)), ''), 'composite'), 'unknown')
ELSE COALESCE(NULLIF(TRIM(current_error.platform), ''), 'unknown')
END) AS platform,
COALESCE(current_error.group_id, 0) AS group_id,
@@ -116,6 +116,8 @@ func TestChannelMonitorV2ErrorAggregationResolvesCompositePlatform(t *testing.T)
require.Contains(t, query, "left join groups g on g.id = current_error.group_id")
require.Contains(t, query, "left join accounts a on a.id = current_error.account_id")
require.Contains(t, query, "a.platform")
require.Contains(t, query, "nullif(trim(a.platform), '')")
require.NotContains(t, query, "nullif(trim(a.platform))")
}
func TestChannelMonitorV2UsageSuccessExcludesCyberBillingRows(t *testing.T) {