Skip to content

chore(antithesis): split intake HTTP modules - #1892

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

chore(antithesis): split intake HTTP modules#1892
blt merged 1 commit into
mainfrom
blt/refactor_antithesis_intake_http

Conversation

@blt

@blt blt commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

Summary

This commit is prep work for up-stack differential equivalence work. I will be adding
more HTTP routes for the scenario rig to hook into, distinct from the routes that are
used by ADP in its normal operation. I found as I was working on that code a desire
for tidy organization, the root of which is present here.

Change Type

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

How did you test this PR?

References

@dd-octo-sts dd-octo-sts Bot added the area/test All things testing: unit/integration, correctness, SMP regression, etc. label Jun 18, 2026
@datadog-datadog-prod-us1

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: 2b0cad1 · Comparison: 49d9bc6 · diff
Analysis Configuration: stripped binaries · Pass/Fail Threshold: +5%
Sizes: 40.55 MiB (baseline) vs 40.55 MiB (comparison)
Size Change: -8 B (-0.00%)

✅ Binary size difference within threshold

Changes by Module
Module File Size Symbols
anon.c332a4a573d0a9a1bf7c71b0a1f57672.1.llvm.11140276550370941693 -130 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.1.llvm.4714197043857028029 +129 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.4.llvm.11140276550370941693 -115 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.4.llvm.4714197043857028029 +114 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.3.llvm.11140276550370941693 -109 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.3.llvm.4714197043857028029 +108 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.0.llvm.11140276550370941693 -97 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.0.llvm.4714197043857028029 +96 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.2.llvm.11140276550370941693 -95 B 1
anon.c332a4a573d0a9a1bf7c71b0a1f57672.2.llvm.4714197043857028029 +94 B 1
[Unmapped] -3 B 1
Detailed Symbol Changes
    FILE SIZE        VM SIZE    
 --------------  -------------- 
  [NEW]    +129  [NEW]     +40    anon.c332a4a573d0a9a1bf7c71b0a1f57672.1.llvm.4714197043857028029
  [NEW]    +114  [NEW]     +25    anon.c332a4a573d0a9a1bf7c71b0a1f57672.4.llvm.4714197043857028029
  [NEW]    +108  [NEW]     +19    anon.c332a4a573d0a9a1bf7c71b0a1f57672.3.llvm.4714197043857028029
  [NEW]     +96  [NEW]      +7    anon.c332a4a573d0a9a1bf7c71b0a1f57672.0.llvm.4714197043857028029
  [NEW]     +94  [NEW]      +5    anon.c332a4a573d0a9a1bf7c71b0a1f57672.2.llvm.4714197043857028029
  -0.1%      -3  [ = ]       0    [Unmapped]
  [DEL]     -95  [DEL]      -5    anon.c332a4a573d0a9a1bf7c71b0a1f57672.2.llvm.11140276550370941693
  [DEL]     -97  [DEL]      -7    anon.c332a4a573d0a9a1bf7c71b0a1f57672.0.llvm.11140276550370941693
  [DEL]    -109  [DEL]     -19    anon.c332a4a573d0a9a1bf7c71b0a1f57672.3.llvm.11140276550370941693
  [DEL]    -115  [DEL]     -25    anon.c332a4a573d0a9a1bf7c71b0a1f57672.4.llvm.11140276550370941693
  [DEL]    -130  [DEL]     -40    anon.c332a4a573d0a9a1bf7c71b0a1f57672.1.llvm.11140276550370941693
  -0.0%      -8  [ = ]       0    TOTAL

@pr-commenter

pr-commenter Bot commented Jun 18, 2026

Copy link
Copy Markdown

Regression Detector (Agent Data Plane)

Run ID: 2f53f331-4fba-4562-b8a6-699cb1733753
Baseline: 9c1abdeb · Comparison: f1148f73 · 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
dsd_uds_100mb_3k_contexts_cpu (erratic) cpu ⚪ +2.07 metrics profiles logs
otlp_ingest_metrics_5mb_memory memory ⚪ +1.06 metrics profiles logs
otlp_ingest_traces_5mb_cpu (erratic) cpu ⚪ +0.77 metrics profiles logs
dsd_uds_1mb_3k_contexts_memory memory ⚪ +0.69 metrics profiles logs
dsd_uds_1mb_3k_contexts_cpu (erratic) cpu ⚪ +0.23 metrics profiles logs
dsd_uds_100mb_3k_contexts_memory memory ⚪ +0.21 metrics profiles logs
otlp_ingest_traces_5mb_throughput throughput ⚪ -0.13 metrics profiles logs
quality_gates_rss_dsd_ultraheavy memory ⚪ +0.11 metrics profiles logs
dsd_uds_500mb_3k_contexts_throughput throughput ⚪ -0.05 metrics profiles logs
quality_gates_rss_idle memory ⚪ +0.04 metrics profiles logs
otlp_ingest_traces_ottl_filtering_5mb_throughput throughput ⚪ -0.04 metrics profiles logs
dsd_uds_10mb_3k_contexts_cpu (erratic) cpu ⚪ +0.03 metrics profiles logs
dsd_uds_512kb_3k_contexts_cpu (erratic) cpu ⚪ +0.03 metrics profiles logs
dsd_uds_512kb_3k_contexts_throughput throughput ⚪ -0.00 metrics profiles logs
otlp_ingest_metrics_5mb_throughput throughput ⚪ -0.00 metrics profiles logs
dsd_uds_100mb_3k_contexts_throughput throughput ⚪ +0.00 metrics profiles logs
dsd_uds_1mb_3k_contexts_throughput throughput ⚪ +0.00 metrics profiles logs
dsd_uds_10mb_3k_contexts_throughput throughput ⚪ +0.01 metrics profiles logs
otlp_ingest_logs_5mb_throughput (ignored) throughput ⚪ +0.03 metrics profiles logs
otlp_ingest_traces_ottl_transform_5mb_memory memory ⚪ -0.08 metrics profiles logs
otlp_ingest_traces_ottl_transform_5mb_throughput throughput ⚪ +0.12 metrics profiles logs
otlp_ingest_traces_5mb_memory memory ⚪ -0.14 metrics profiles logs
dsd_uds_500mb_3k_contexts_memory memory ⚪ -0.15 metrics profiles logs
otlp_ingest_traces_ottl_filtering_5mb_memory memory ⚪ -0.17 metrics profiles logs
quality_gates_rss_dsd_low memory ⚪ -0.18 metrics profiles logs
quality_gates_rss_dsd_heavy memory ⚪ -0.37 metrics profiles logs
otlp_ingest_traces_ottl_filtering_5mb_cpu (erratic) cpu ⚪ -0.38 metrics profiles logs
otlp_ingest_logs_5mb_cpu (ignored) cpu ⚪ -0.39 metrics profiles logs
dsd_uds_500mb_3k_contexts_cpu (erratic) cpu ⚪ -0.42 metrics profiles logs
otlp_ingest_traces_ottl_transform_5mb_cpu (erratic) cpu ⚪ -0.57 metrics profiles logs
quality_gates_rss_dsd_medium memory ⚪ -0.66 metrics profiles logs
dsd_uds_512kb_3k_contexts_memory memory ⚪ -0.74 metrics profiles logs
dsd_uds_10mb_3k_contexts_memory memory ⚪ -0.93 metrics profiles logs
otlp_ingest_metrics_5mb_cpu (erratic) cpu ⚪ -1.70 metrics profiles logs
otlp_ingest_logs_5mb_memory (ignored) memory ⚪ -16.96 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.4 MiB ≤ 50 MiB metrics profiles logs
quality_gates_rss_dsd_medium memory_usage 10/10 ✅ 65.1 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/refactor_antithesis_intake_http branch from 03f2c03 to cb55618 Compare June 18, 2026 23:27
@blt
blt force-pushed the blt/move_antithesis_deploy_to_scenarios_general branch from 40344fa to 57d7eed Compare June 18, 2026 23:27
@blt
blt force-pushed the blt/move_antithesis_deploy_to_scenarios_general branch from 57d7eed to 78a3787 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/move_antithesis_deploy_to_scenarios_general branch from 78a3787 to 6b0eb35 Compare June 22, 2026 19:05
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch from 68aea10 to 43b6ef9 Compare June 22, 2026 19:05
@blt
blt force-pushed the blt/move_antithesis_deploy_to_scenarios_general branch from 6b0eb35 to ddf3339 Compare June 22, 2026 20:58
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch from 43b6ef9 to ccd88a8 Compare June 22, 2026 20:58
@blt
blt force-pushed the blt/move_antithesis_deploy_to_scenarios_general branch from ddf3339 to cfa40e8 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/move_antithesis_deploy_to_scenarios_general branch 2 times, most recently from 72cca97 to ec7db94 Compare June 23, 2026 17:07
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch from 7e581a6 to 33412fb Compare June 23, 2026 17:07
@blt blt changed the title refactor(antithesis): split intake HTTP modules chore(antithesis): split intake HTTP modules Jun 23, 2026
@blt
blt marked this pull request as ready for review June 23, 2026 17:52
@blt
blt requested review from a team as code owners June 23, 2026 17:52
Copilot AI review requested due to automatic review settings June 23, 2026 17:52

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

Refactors the Antithesis intake HTTP surface to split Datadog-compatible routes and request-measurement middleware into dedicated submodules, as prep work for adding additional scenario/rig-specific HTTP routes.

Changes:

  • Extracted request measurement logic into http/middleware.rs and updated imports accordingly.
  • Introduced http/datadog.rs (and http/datadog/metrics.rs) to house Datadog-compatible routes/handlers.
  • Simplified http.rs to focus on composing the top-level router.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
test/antithesis/intake/src/lib.rs Removes the old intake module entry point as handlers move under http/.
test/antithesis/intake/src/http.rs Router composition now delegates to protocol submodules and middleware.
test/antithesis/intake/src/http/middleware.rs New module containing measurement middleware and request extensions.
test/antithesis/intake/src/http/datadog.rs New module defining Datadog-compatible intake routes.
test/antithesis/intake/src/http/datadog/metrics.rs Houses the /api/v2/series handler and validation pipeline.

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

Comment thread test/antithesis/intake/src/http/datadog.rs Outdated
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch from 33412fb to 8bf7fa6 Compare June 23, 2026 18:26
@blt
blt force-pushed the blt/move_antithesis_deploy_to_scenarios_general branch from ec7db94 to f6501ff Compare June 23, 2026 18:53
Copilot AI review requested due to automatic review settings June 23, 2026 18:53
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch from 8bf7fa6 to 6ec313e Compare June 23, 2026 18:53

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 6 changed files in this pull request and generated 1 comment.

Comment thread test/antithesis/intake/src/http.rs
@blt
blt force-pushed the blt/move_antithesis_deploy_to_scenarios_general branch from f6501ff to cb84121 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
Copilot AI review requested due to automatic review settings 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 force-pushed the blt/move_antithesis_deploy_to_scenarios_general branch from cb84121 to b43c958 Compare June 23, 2026 20:16

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 6 changed files in this pull request and generated 1 comment.

Comment thread test/antithesis/intake/src/http.rs Outdated
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch from fdd089b to f1148f7 Compare June 23, 2026 20:31

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, 5:54 PM UTC: Graphite rebased this pull request as part of a merge.
  • Jun 25, 6:06 PM UTC: @blt merged this pull request with Graphite.

@blt
blt changed the base branch from blt/move_antithesis_deploy_to_scenarios_general to graphite-base/1892 June 25, 2026 17:52
@blt
blt changed the base branch from graphite-base/1892 to main June 25, 2026 17:53
@blt
blt force-pushed the blt/refactor_antithesis_intake_http branch from f1148f7 to 49d9bc6 Compare June 25, 2026 17:53
@blt
blt merged commit d95a996 into main Jun 25, 2026
74 of 81 checks passed
@blt
blt deleted the blt/refactor_antithesis_intake_http branch June 25, 2026 18:06
dd-octo-sts Bot pushed a commit that referenced this pull request Jun 25, 2026
## Summary
<!-- Please provide a brief summary about what this PR does.
This should help the reviewers give feedback faster and with higher quality. -->

This commit is prep work for up-stack differential equivalence work. I will be adding
more HTTP routes for the scenario rig to hook into, distinct from the routes that are
used by ADP in its normal operation. I found as I was working on that code a desire
for tidy organization, the root of which is present here.

## Change Type
- [ ] Bug fix
- [ ] New feature
- [x] Non-functional (chore, refactoring, docs)
- [ ] Performance

## How did you test this PR?
<!-- Please how you tested these changes here -->

## References

<!-- Please list any issues closed by this PR. -->

<!--
- Closes: <issue link>
-->

<!-- Any other issues or PRs relevant to this PR? Feel free to list them here. --> d95a996
tobz pushed a commit that referenced this pull request Jun 30, 2026
<!-- Please provide a brief summary about what this PR does.
This should help the reviewers give feedback faster and with higher quality. -->

This commit is prep work for up-stack differential equivalence work. I will be adding
more HTTP routes for the scenario rig to hook into, distinct from the routes that are
used by ADP in its normal operation. I found as I was working on that code a desire
for tidy organization, the root of which is present here.

- [ ] Bug fix
- [ ] New feature
- [x] Non-functional (chore, refactoring, docs)
- [ ] Performance

<!-- Please how you tested these changes here -->

<!-- Please list any issues closed by this PR. -->

<!--
- Closes: <issue link>
-->

<!-- Any other issues or PRs relevant to this PR? Feel free to list them here. -->
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