Skip to content

enhancement(antithesis): accept Datadog intake endpoints - #1893

Merged
blt merged 1 commit into
mainfrom
blt/antithesis_intake_datadog_endpoints
Jun 25, 2026
Merged

enhancement(antithesis): accept Datadog intake endpoints#1893
blt merged 1 commit into
mainfrom
blt/antithesis_intake_datadog_endpoints

Conversation

@blt

@blt blt commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

Summary

Add intake endpoints sufficient to prime a differential comparison with Datadog Agent.
This commit introduces endpoints in the antithesis rig that allow for service checks, events
to be handled properly by the target and will allow the rig to, up-stack, differentially compare
responses to the API.

Change Type

  • Bug fix
  • New feature
  • Non-functional (chore, refactoring, docs)
  • Performance

@datadog-official

This comment has been minimized.

@pr-commenter

pr-commenter Bot commented Jun 18, 2026

Copy link
Copy Markdown

Binary Size Analysis (Agent Data Plane)

Baseline: d95a996 · Comparison: da486e2 · diff
Analysis Configuration: stripped binaries · Pass/Fail Threshold: +5%
Sizes: 40.55 MiB (baseline) vs 40.55 MiB (comparison)
Size Change: +0 B (+0.00%)

✅ Binary size difference within threshold

Changes by Module
Module File Size Symbols
anon.c332a4a573d0a9a1bf7c71b0a1f57672.1.llvm.17168229903063862644 +130 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.1.llvm.13511237879777330867 -130 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.4.llvm.17168229903063862644 +115 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.4.llvm.13511237879777330867 -115 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.3.llvm.17168229903063862644 +109 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.3.llvm.13511237879777330867 -109 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.0.llvm.17168229903063862644 +97 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.0.llvm.13511237879777330867 -97 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.2.llvm.17168229903063862644 +95 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.2.llvm.13511237879777330867 -95 B 1
Detailed Symbol Changes
    FILE SIZE        VM SIZE    
 --------------  -------------- 
  [NEW]    +130  [NEW]     +40    anon.c332a4a573d0a9a1bf7c71b0a1f57672.1.llvm.17168229903063862644
  [NEW]    +115  [NEW]     +25    anon.c332a4a573d0a9a1bf7c71b0a1f57672.4.llvm.17168229903063862644
  [NEW]    +109  [NEW]     +19    anon.c332a4a573d0a9a1bf7c71b0a1f57672.3.llvm.17168229903063862644
  [NEW]     +97  [NEW]      +7    anon.c332a4a573d0a9a1bf7c71b0a1f57672.0.llvm.17168229903063862644
  [NEW]     +95  [NEW]      +5    anon.c332a4a573d0a9a1bf7c71b0a1f57672.2.llvm.17168229903063862644
  [DEL]     -95  [DEL]      -5    anon.c332a4a573d0a9a1bf7c71b0a1f57672.2.llvm.13511237879777330867
  [DEL]     -97  [DEL]      -7    anon.c332a4a573d0a9a1bf7c71b0a1f57672.0.llvm.13511237879777330867
  [DEL]    -109  [DEL]     -19    anon.c332a4a573d0a9a1bf7c71b0a1f57672.3.llvm.13511237879777330867
  [DEL]    -115  [DEL]     -25    anon.c332a4a573d0a9a1bf7c71b0a1f57672.4.llvm.13511237879777330867
  [DEL]    -130  [DEL]     -40    anon.c332a4a573d0a9a1bf7c71b0a1f57672.1.llvm.13511237879777330867
  [ = ]       0  [ = ]       0    TOTAL

@pr-commenter

pr-commenter Bot commented Jun 19, 2026

Copy link
Copy Markdown

Regression Detector (Agent Data Plane)

Run ID: e12567f6-e276-4dca-b494-7a6abf15a7a2
Baseline: 9c1abdeb · Comparison: bbe00c90 · diff

Optimization Goals: ✅ No significant changes detected

Fine details of change detection per experiment (35)

Experiments configured erratic: true are tagged (ignored) and skipped when determining which experiments regressed or improved. Experiments which are detected as erratic at runtime are tagged (erratic) to flag that the run's sample dispersion was high, but their regression / improvement signal still counts.

experiment goal Δ mean % links
otlp_ingest_logs_5mb_memory (ignored) memory ⚪ +14.30 metrics profiles logs
otlp_ingest_metrics_5mb_cpu (erratic) cpu ⚪ +2.34 metrics profiles logs
dsd_uds_10mb_3k_contexts_cpu (erratic) cpu ⚪ +1.45 metrics profiles logs
otlp_ingest_traces_ottl_transform_5mb_cpu (erratic) cpu ⚪ +1.13 metrics profiles logs
dsd_uds_1mb_3k_contexts_cpu (erratic) cpu ⚪ +1.10 metrics profiles logs
otlp_ingest_traces_5mb_cpu (erratic) cpu ⚪ +1.03 metrics profiles logs
otlp_ingest_logs_5mb_cpu (ignored) cpu ⚪ +0.92 metrics profiles logs
otlp_ingest_traces_ottl_transform_5mb_throughput throughput ⚪ -0.63 metrics profiles logs
quality_gates_rss_dsd_heavy memory ⚪ +0.51 metrics profiles logs
otlp_ingest_traces_5mb_throughput throughput ⚪ -0.24 metrics profiles logs
dsd_uds_500mb_3k_contexts_cpu (erratic) cpu ⚪ +0.16 metrics profiles logs
otlp_ingest_traces_5mb_memory memory ⚪ +0.15 metrics profiles logs
otlp_ingest_traces_ottl_filtering_5mb_memory memory ⚪ +0.14 metrics profiles logs
otlp_ingest_traces_ottl_filtering_5mb_throughput throughput ⚪ -0.13 metrics profiles logs
dsd_uds_1mb_3k_contexts_memory memory ⚪ +0.07 metrics profiles logs
dsd_uds_100mb_3k_contexts_throughput throughput ⚪ -0.03 metrics profiles logs
otlp_ingest_metrics_5mb_throughput throughput ⚪ -0.02 metrics profiles logs
quality_gates_rss_dsd_ultraheavy memory ⚪ +0.01 metrics profiles logs
dsd_uds_512kb_3k_contexts_throughput throughput ⚪ -0.00 metrics profiles logs
dsd_uds_10mb_3k_contexts_throughput throughput ⚪ +0.00 metrics profiles logs
dsd_uds_1mb_3k_contexts_throughput throughput ⚪ +0.00 metrics profiles logs
otlp_ingest_logs_5mb_throughput (ignored) throughput ⚪ +0.01 metrics profiles logs
dsd_uds_512kb_3k_contexts_memory memory ⚪ -0.01 metrics profiles logs
quality_gates_rss_idle memory ⚪ -0.03 metrics profiles logs
otlp_ingest_traces_ottl_transform_5mb_memory memory ⚪ -0.10 metrics profiles logs
quality_gates_rss_dsd_low memory ⚪ -0.13 metrics profiles logs
dsd_uds_100mb_3k_contexts_memory memory ⚪ -0.18 metrics profiles logs
quality_gates_rss_dsd_medium memory ⚪ -0.20 metrics profiles logs
dsd_uds_10mb_3k_contexts_memory memory ⚪ -0.43 metrics profiles logs
otlp_ingest_metrics_5mb_memory memory ⚪ -0.43 metrics profiles logs
dsd_uds_500mb_3k_contexts_throughput throughput ⚪ +0.58 metrics profiles logs
dsd_uds_500mb_3k_contexts_memory memory ⚪ -0.80 metrics profiles logs
dsd_uds_100mb_3k_contexts_cpu (erratic) cpu ⚪ -2.14 metrics profiles logs
dsd_uds_512kb_3k_contexts_cpu (erratic) cpu ⚪ -3.69 metrics profiles logs
otlp_ingest_traces_ottl_filtering_5mb_cpu (erratic) cpu ⚪ -4.25 metrics profiles logs
Bounds Checks: ✅ Passed (5)
experiment check replicates observed links
quality_gates_rss_dsd_heavy memory_usage 10/10 ✅ 133 MiB ≤ 140 MiB metrics profiles logs
quality_gates_rss_dsd_low memory_usage 10/10 ✅ 42.2 MiB ≤ 50 MiB metrics profiles logs
quality_gates_rss_dsd_medium memory_usage 10/10 ✅ 64.2 MiB ≤ 75 MiB metrics profiles logs
quality_gates_rss_dsd_ultraheavy memory_usage 10/10 ✅ 191 MiB ≤ 200 MiB metrics profiles logs
quality_gates_rss_idle memory_usage 10/10 ✅ 28.2 MiB ≤ 40 MiB metrics profiles logs
Explanation

A change is flagged as a regression when |Δ mean %| > 5.00% in the regressing direction for its optimization goal AND SMP marks the experiment as a regression (is_regression: true). Improvements use the matching criteria for the improving direction. Experiments configured erratic: true (tagged (ignored)) are skipped outright; experiments detected as erratic at runtime (tagged (erratic)) still count, since that flag describes sample dispersion rather than directional certainty. The Δ mean % cell is colored accordingly: 🟢 = improvement, 🔴 = regression, ⚪ = neutral. Reduction in CPU or memory is an improvement; reduction in ingress throughput is a regression.

@blt
blt force-pushed the blt/antithesis_intake_datadog_endpoints branch from 1d98614 to a20bc37 Compare June 22, 2026 18:48
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch from cb55618 to 68aea10 Compare June 22, 2026 18:48
@blt
blt force-pushed the blt/antithesis_intake_datadog_endpoints branch from a20bc37 to d7c3986 Compare June 22, 2026 19:05
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch 2 times, most recently from 43b6ef9 to ccd88a8 Compare June 22, 2026 20:58
@blt
blt force-pushed the blt/antithesis_intake_datadog_endpoints branch 2 times, most recently from ac2e0a0 to 8077839 Compare June 22, 2026 23:27
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch 2 times, most recently from 7fe8277 to 7e581a6 Compare June 23, 2026 16:24
@blt
blt force-pushed the blt/antithesis_intake_datadog_endpoints branch from 8077839 to 0e8798f Compare June 23, 2026 16:24
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch from 7e581a6 to 33412fb Compare June 23, 2026 17:07
@blt
blt force-pushed the blt/antithesis_intake_datadog_endpoints branch 2 times, most recently from 8c1fcef to 7d5101a Compare June 23, 2026 18:26
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch 2 times, most recently from 8bf7fa6 to 6ec313e Compare June 23, 2026 18:53
@blt
blt force-pushed the blt/antithesis_intake_datadog_endpoints branch 2 times, most recently from 66dd192 to 8e0f47a Compare June 23, 2026 19:07
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch from 6ec313e to 78229ab Compare June 23, 2026 19:07
@blt
blt force-pushed the blt/antithesis_intake_datadog_endpoints branch from 8e0f47a to c418c13 Compare June 23, 2026 20:16
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch from 78229ab to fdd089b Compare June 23, 2026 20:16
@blt
blt marked this pull request as ready for review June 23, 2026 20:19
@blt
blt requested review from a team as code owners June 23, 2026 20:19
Copilot AI review requested due to automatic review settings June 23, 2026 20:19

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds additional Datadog-compatible HTTP intake endpoints to the Antithesis mock intake service so it can accept events, service checks, and sketches (in addition to metric series) for differential comparison against the Datadog Agent.

Changes:

  • Add handlers for event intake (/api/v1/events_batch, /api/v1/events, /intake/) and service check intake (/api/v1/check_run).
  • Add handler for distribution sketches (/api/beta/sketches) and route wiring for all new endpoints plus /api/v1/validate.
  • Add serde (derive) dependency to support new JSON payload structs.

Reviewed changes

Copilot reviewed 5 out of 6 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
test/antithesis/intake/src/http/datadog.rs Wires up new Datadog-compatible routes and per-route middleware.
test/antithesis/intake/src/http/datadog/metrics.rs Adds /api/beta/sketches handler parsing SketchPayload.
test/antithesis/intake/src/http/datadog/events.rs Adds protobuf/JSON event intake handlers and minimal payload “touch” logic.
test/antithesis/intake/src/http/datadog/service_checks.rs Adds service check intake handler and JSON payload struct.
test/antithesis/intake/Cargo.toml Adds serde with derive for new deserialized payloads.
Cargo.lock Locks serde dependency addition.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread test/antithesis/intake/src/http/datadog/service_checks.rs
Comment thread test/antithesis/intake/src/http/datadog/events.rs
Comment thread test/antithesis/intake/src/http/datadog/events.rs
Comment thread test/antithesis/intake/src/http/datadog/events.rs
Comment thread test/antithesis/intake/src/http/datadog/metrics.rs
Comment thread test/antithesis/intake/src/http/datadog.rs Outdated
Comment thread test/antithesis/intake/src/http/datadog.rs Outdated
Comment thread test/antithesis/intake/src/http/datadog.rs Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c418c13036

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread test/antithesis/intake/src/http/datadog.rs
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch from fdd089b to f1148f7 Compare June 23, 2026 20:31
@blt
blt force-pushed the blt/antithesis_intake_datadog_endpoints branch from c418c13 to 86b6312 Compare June 23, 2026 20:31
Copilot AI review requested due to automatic review settings June 23, 2026 21:03
@blt
blt force-pushed the blt/antithesis_intake_datadog_endpoints branch from 86b6312 to 48e58e2 Compare June 23, 2026 21:03

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 7 changed files in this pull request and generated 4 comments.

Comment thread test/antithesis/intake/src/http.rs Outdated
Comment thread test/antithesis/intake/src/http/datadog.rs Outdated
Comment thread test/antithesis/intake/src/http/datadog.rs Outdated
Comment thread test/antithesis/intake/src/http/datadog.rs Outdated
@blt
blt force-pushed the blt/antithesis_intake_datadog_endpoints branch from 48e58e2 to bbe00c9 Compare June 23, 2026 21:49

blt commented Jun 25, 2026

Copy link
Copy Markdown
Contributor Author

Merge activity

  • Jun 25, 5:52 PM UTC: A user started a stack merge that includes this pull request via Graphite.
  • Jun 25, 6:08 PM UTC: Graphite rebased this pull request as part of a merge.
  • Jun 25, 6:21 PM UTC: @blt merged this pull request with Graphite.

@blt
blt changed the base branch from blt/refactor_antithesis_intake_http to graphite-base/1893 June 25, 2026 17:53
@blt
blt changed the base branch from graphite-base/1893 to main June 25, 2026 18:06
@blt
blt force-pushed the blt/antithesis_intake_datadog_endpoints branch from bbe00c9 to da486e2 Compare June 25, 2026 18:07
@blt
blt merged commit da59d73 into main Jun 25, 2026
73 of 81 checks passed
@blt
blt deleted the blt/antithesis_intake_datadog_endpoints branch June 25, 2026 18:21
dd-octo-sts Bot pushed a commit that referenced this pull request Jun 25, 2026
## Summary

Add intake endpoints sufficient to prime a differential comparison with Datadog Agent.
This commit introduces endpoints in the antithesis rig that allow for service checks, events
to be handled properly by the target and will allow the rig to, up-stack, differentially compare
responses to the API.

## Change Type
- [ ] Bug fix
- [ ] New feature
- [x] Non-functional (chore, refactoring, docs)
- [ ] Performance da59d73
tobz pushed a commit that referenced this pull request Jun 30, 2026
Add intake endpoints sufficient to prime a differential comparison with Datadog Agent.
This commit introduces endpoints in the antithesis rig that allow for service checks, events
to be handled properly by the target and will allow the rig to, up-stack, differentially compare
responses to the API.

- [ ] Bug fix
- [ ] New feature
- [x] Non-functional (chore, refactoring, docs)
- [ ] Performance
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/test All things testing: unit/integration, correctness, SMP regression, etc.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants