enhancement(antithesis): Introduce rig intake API - #1826
Conversation
This comment has been minimized.
This comment has been minimized.
Binary Size Analysis (Agent Data Plane)Baseline: 389eb6b · Comparison: e53275f · diff ✅ Binary size difference within thresholdChanges by Module
Detailed Symbol Changes |
Regression Detector (Agent Data Plane)Run ID: Optimization Goals: ✅ No significant changes detectedFine details of change detection per experiment (35)Experiments configured
Bounds Checks: ❌ Failed (5)
ExplanationA 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 ( |
a6287d2 to
2c2f617
Compare
323267a to
8c7b55d
Compare
fd1387d to
825a824
Compare
825a824 to
9cb8d2d
Compare
8c7b55d to
084d401
Compare
There was a problem hiding this comment.
Pull request overview
This PR adds a dedicated antithesis-intake crate for Antithesis harness runs, implementing an /api/v2/series HTTP intake that asserts Pyld01–Pyld22 payload properties via the Antithesis SDK, and wires it into the Antithesis deploy images (replacing the shared correctness datadog-intake in that context).
Changes:
- Introduces the new
test/antithesis/intakecrate and binary (antithesis-intake) with an Axum router and a property-assertion pipeline for/api/v2/series. - Updates Antithesis deploy Dockerfile/compose to build and run
antithesis-intake(and removesfinally_verify_deliveryfrom the image build/copy path). - Adds/updates documentation describing the new intake and its asserted properties.
Reviewed changes
Copilot reviewed 20 out of 21 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| test/antithesis/scratchbook/w-property-intake.md | New scratchbook doc describing the W/Pyld property intake behavior. |
| test/antithesis/intake/src/properties/payload/series.rs | Implements MetricSeries-level Pyld checks (name, type, tags, origin, point-count). |
| test/antithesis/intake/src/properties/payload/resource.rs | Implements resource-level Pyld checks (host resource resolution, resource count, hostname length). |
| test/antithesis/intake/src/properties/payload/point.rs | Implements MetricPoint-level Pyld checks (NaN values, future timestamp bound). |
| test/antithesis/intake/src/properties/payload/metric_payload.rs | Implements payload-level Pyld checks (decode success, total point count). |
| test/antithesis/intake/src/properties/payload/envelope.rs | Implements envelope/header Pyld checks (content-type, content-encoding, API key presence). |
| test/antithesis/intake/src/properties/payload/constants.rs | Defines shared spec-derived constants for payload checks. |
| test/antithesis/intake/src/properties/payload/bytes.rs | Implements size/Content-Length Pyld checks. |
| test/antithesis/intake/src/properties/payload.rs | Defines payload property modules. |
| test/antithesis/intake/src/properties.rs | Top-level properties module wiring for the intake. |
| test/antithesis/intake/src/lib.rs | Crate root for antithesis-intake, including lint policy and module exports. |
| test/antithesis/intake/src/intake.rs | /api/v2/series handler and evaluation pipeline. |
| test/antithesis/intake/src/http.rs | Axum router construction and measurement middleware for wire/decompressed sizes. |
| test/antithesis/intake/src/bin/intake.rs | Binary entrypoint (CLI/env config, logging, graceful shutdown). |
| test/antithesis/intake/README.md | Spec-style documentation for Pyld01–Pyld22 properties. |
| test/antithesis/intake/Cargo.toml | New crate manifest and dependencies for antithesis-intake. |
| test/antithesis/harness/src/bin/finally_verify_delivery.rs | Removed (previous /metrics/dump polling liveness check). |
| test/antithesis/deploy/Dockerfile | Builds/runs antithesis-intake in the Antithesis intake image; removes finally_verify_delivery. |
| test/antithesis/deploy/docker-compose.yaml | Updates comments to reflect antithesis-intake. |
| Cargo.toml | Adds test/antithesis/intake to the workspace members. |
| Cargo.lock | Adds the antithesis-intake package entry. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9cb8d2dd37
ℹ️ 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".
9cb8d2d to
807b378
Compare
07d1980 to
ecdc5df
Compare
ecdc5df to
eb2197b
Compare
aa4004f to
2fcdd8d
Compare
02c9828 to
e2f4b11
Compare
2fcdd8d to
9cd0107
Compare
tobz
left a comment
There was a problem hiding this comment.
Most of this looks reasonable to me, but I leave it to you to address the clanker feedback and merge conflicts before merging. 👍🏻
c3bf9de to
a7e5cda
Compare
This commit introduces an intake API for antithesis tests. It's a new implementation compared to the pre-existing intake in the project as this intake has different concerns. However, my hope is to eventually merge the two together once this one is done baking, or supplant the other depending on where we get to.
a7e5cda to
e53275f
Compare
## Summary This commit introduces an intake API for antithesis tests. It's a new implementation compared to the pre-existing intake in the project as this intake has different concerns. It will rapidly diverge from the other intake, being focused on allowing driver and check claims when running under Antithesis. ## Change Type - [ ] Bug fix - [ ] New feature - [x] Non-functional (chore, refactoring, docs) - [ ] Performance 9c1abde
This commit introduces an intake API for antithesis tests. It's a new implementation compared to the pre-existing intake in the project as this intake has different concerns. It will rapidly diverge from the other intake, being focused on allowing driver and check claims when running under Antithesis. - [ ] Bug fix - [ ] New feature - [x] Non-functional (chore, refactoring, docs) - [ ] Performance

Summary
This commit introduces an intake API for antithesis tests. It's a new implementation compared to the pre-existing intake in the project as this intake has different concerns. It will rapidly diverge from the other intake, being focused on allowing driver and check claims when running under Antithesis.
Change Type
How did you test this PR?
References