Repository navigation
Conversation
Keep the Python SDK's native ABI while adding prerequisite evaluation traces, shared evaluation policy, and RC capability registration. Environment: Datadog workspace Co-Authored-By: Codex GPT-6 <noreply@localhost>
📚 Documentation Check Results📦
|
🔒 Cargo Deny Results📦
|
🎉 All green!🧪 All tests passed 🎯 Code Coverage (details) 🔗 Commit SHA: 9cb812d | Docs | View more details | Give us feedback! |
Route flags without prerequisite conditions through the allocation-only evaluator, sharing validation and assignment construction with dependent evaluation. Environment: Datadog workspace Co-Authored-By: Codex GPT-6 <noreply@localhost>
BenchmarksComparisonBenchmark execution time: 2026-10-28 22:40:35 Comparing candidate commit 9cb812d in PR branch Found 0 performance improvements and 3 performance regressions! Performance is the same for 159 metrics, 0 unstable metrics.
|
Artifact Size Benchmark Reportaarch64-alpine-linux-musl
aarch64-unknown-linux-gnu
libdatadog-x64-windows
libdatadog-x86-windows
x86_64-alpine-linux-musl
x86_64-unknown-linux-gnu
|
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Closing in favor of the mainline release-and-upgrade path, consistent with the repository backport policy for new features. #2748 remains the evaluator implementation. Python DataDog/dd-trace-py#21346 and Ruby DataDog/dd-trace-rb#6613 are being updated to remove their v46 backport dependencies. |
What does this PR do?
Backport dependent-flag evaluation and prerequisite telemetry from #2748, plus the RC capability enum from #2745, onto the v46.1.0 source line consumed by Python. Dependency-free flags retain an allocation-only fast path. The evaluator also carries its shared experimentation-policy API and timestamp validation so recursive evaluations preserve the same context, logical time, and opt-out policy.
Motivation
Python cannot consume the current main-based native revision without a separate tracing-model migration. This compatibility revision preserves v46.1.0 crate versions, dependencies, and Rust 1.87 minimum while providing a reviewable immutable revision for the Python dependent-flag integration.
Additional notes
The base branch
helen/ffe-dependent-flags-v46-basepoints exactly to v46.1.0 (bfa70eb6166db96673844c1a3fc1048f58e895d1); this is a compatibility backport for SDK consumption, not the mainline feature PR. #2748 remains the upstream implementation. This PR does not publish a release or automatically advertise SDK capability; Python must integrate the evaluation trace and enable its readiness reporter.Validation