From fd1dbdd464459fddc5a5cad63464ba582c14f796 Mon Sep 17 00:00:00 2001 From: "Brian L. Troutwine" Date: Mon, 27 Jul 2026 18:56:33 +0000 Subject: [PATCH] chore(antithesis): Add provider_kind in sample config Pyld54 asserts a v3 tagset back-reference resolves to an earlier tagset. Agent emits that back-reference only when a metric carries both a shared prefix tagset and its own tags. Previously we only ever emitted load that carried no shared prefix. This commit adds provider_kind into the sampled datadog.yaml. Agent will attach this as a global tag which acts as a shared prefix. 1/3 of configs will not have provider_kind present. --- test/antithesis/harness/src/config.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/test/antithesis/harness/src/config.rs b/test/antithesis/harness/src/config.rs index 53efe6b566..1277fbe910 100644 --- a/test/antithesis/harness/src/config.rs +++ b/test/antithesis/harness/src/config.rs @@ -162,6 +162,9 @@ pub(crate) struct V3SeriesConfig { enabled: &'static str, } +/// Cloud provider kinds sampled into `provider_kind`. The empty string emits no tag. +const PROVIDER_KINDS: &[&str] = &["", "gke-autopilot", "gke-gdc"]; + /// Agent-facing config. `hostname`, `api_key`, `dd_url`, and the socket are /// supplied by the environment; `log_level`, the series intake API, and the /// `DogStatsD` options are sampled per branch. The static flags are appended by @@ -184,6 +187,9 @@ pub struct DatadogConfig { /// ADP's safety gate for authoritative v3 series, which the Agent has no counterpart for. /// Sampled with [`Self::use_v3_api`] so ADP and the Agent never split encodings in a timeline. data_plane_metrics_v3_series_enabled: bool, + /// Cloud provider kind, sampled per timeline. + #[serde(skip_serializing_if = "String::is_empty")] + provider_kind: String, /// `DogStatsD` options, flattened to top-level `dogstatsd_*` keys. #[serde(flatten)] dogstatsd: DogStatsdConfig, @@ -210,6 +216,7 @@ impl DatadogConfig { }, serializer_compressor_kind: rng.random(), data_plane_metrics_v3_series_enabled: series_v3, + provider_kind: PROVIDER_KINDS[rng.random_range(0..PROVIDER_KINDS.len())].to_owned(), dogstatsd: DogStatsdConfig::sample(rng, dogstatsd_socket), } }