Skip to content

Resolve the Feature Flags settings like the SDK - #12977

Open
PerfectSlayer wants to merge 3 commits into
bbujon/ffe-compatfrom
bbujon/ffe-settings
Open

PerfectSlayer wants to merge 3 commits into
bbujon/ffe-compatfrom
bbujon/ffe-settings

Conversation

@PerfectSlayer

@PerfectSlayer PerfectSlayer commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator

What Does This Do

Resolves the Feature Flags settings in the agent like the dd-openfeature SDK does:

  • Moves the Feature Flags settings to dd-trace-api and removes the feature-flagging-config module.
  • Exposes the configuration source as an enum, parsed case insensitively without trimming, like the SDK.
  • Adds ConfigurationResolutionParityTest, checking the agent and the SDK resolve enablement and source alike, including padded values.

Motivation

The agent and the SDK must agree on the configuration source (APMLP-1512). Done after the compatibility PR: released SDKs read the old settings class from the agent until they are guarded.

Additional Notes

Refactoring only for the agent settings; no change to the supported values.

Stack

The full change is in #12709. It was split into this stack to ease the review.

  1. Resolve Feature Flags enablement from instrumenter config #12845 (merged)
  2. Add dd-openfeature SDK flag configuration and evaluation core #12840 (merged)
  3. Add dd-openfeature SDK settings and configuration delivery #12841 (merged)
  4. Add dd-openfeature SDK exposure and flag evaluation pipelines #12842 (merged)
  5. Add dd-openfeature SDK OpenFeature provider #12843 (merged)
  6. Port master Feature Flags changes to the dd-openfeature SDK #12957 (merged)
  7. Add the agent bridge for the dd-openfeature SDK #12975
  8. Connect the dd-openfeature SDK to the agent #12844
  9. Keep released dd-openfeature SDKs working with the agent #12976
  10. Resolve the Feature Flags settings like the SDK #12977 👈 this PR
  11. Restore the agent Feature Flags behaviors through the bridge #12978
  12. Add agentless and standalone OpenFeature smoke tests #12846

Jira ticket: APMLP-1512

🤖 Generated with Claude Code

@datadog-datadog-prod-us1

datadog-datadog-prod-us1 Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

🎯 Code Coverage (details)
• Patch Coverage: 80.00%
• Overall Coverage: 57.78% (-1.53%)

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 994142b | Docs | Give us feedback!

@dd-octo-sts

dd-octo-sts Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

🟢 Java Benchmark SLOs — All performance SLOs passed

Suite Status
Startup 🟢 pass

SLO thresholds are defined here based on automatically generated metrics. A warning is raised when results are within 5% of the threshold.

PR vs. master results
Scenario Candidate master Δ (95% CI of mean)
startup:insecure-bank:iast:Agent 14.08 s 14.02 s [-0.4%; +1.2%] (no difference)
startup:insecure-bank:tracing:Agent 12.97 s 12.99 s [-0.9%; +0.4%] (no difference)
startup:petclinic:appsec:Agent 17.16 s 16.94 s [+0.6%; +2.1%] (maybe worse)
startup:petclinic:iast:Agent 16.98 s 17.01 s [-1.0%; +0.7%] (no difference)
startup:petclinic:profiling:Agent 16.79 s 16.59 s [+0.1%; +2.4%] (maybe worse)
startup:petclinic:sca:Agent 16.44 s 16.95 s [-7.3%; +1.2%] (no difference)
startup:petclinic:tracing:Agent 16.15 s 15.63 s [-1.1%; +7.7%] (no difference)

Commit: 1b3a7700 · CI Pipeline · Benchmarking Platform UI


Load and DaCapo benchmarks can be triggered manually in the GitLab pipeline. Results will appear in the Benchmarking Platform UI after completion.

@PerfectSlayer
PerfectSlayer force-pushed the bbujon/ffe-settings branch 2 times, most recently from e22560c to bbdf441 Compare October 22, 2026 11:30
@PerfectSlayer
PerfectSlayer marked this pull request as ready for review October 22, 2026 11:35
@PerfectSlayer
PerfectSlayer requested review from a team as code owners October 22, 2026 11:35
@PerfectSlayer
PerfectSlayer requested review from AlexeyKuznetsov-DD and ygree and removed request for a team October 22, 2026 11:35
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-22T11:39:35.160424Z bbdf441 Draft marked ready
🔒 Security Review ✅ Completed 2026-10-22T11:38:53.197456Z bbdf441 Draft marked ready
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@datadog-datadog-prod-us1 datadog-datadog-prod-us1 Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Bits Code Review: PASS

More details

The settings retain their existing keys and parsing behavior, and repository callers are consistently updated for the enum return type.

Was this helpful? React 👍 or 👎

Open Bits AI session

🤖 Bits Code Review · Commit bbdf441

PerfectSlayer and others added 2 commits October 22, 2026 17:19
Move the Feature Flags settings to dd-trace-api, remove the
feature-flagging-config module, and expose the configuration source as
an enum parsed like the SDK does. Check the agent and the SDK resolve
the settings alike.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@sarahchen6 sarahchen6 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Looks good!

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp: openfeature OpenFeature tag: ai generated Largely based on code generated by an AI or LLM tag: no release notes Changes to exclude from release notes type: refactoring

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants