Repository navigation
Keep released dd-openfeature SDKs working with the agent - #12976
PerfectSlayer wants to merge 5 commits into
Conversation
🟢 Java Benchmark SLOs — All performance SLOs passed
PR vs. master results
Commit: Load and DaCapo benchmarks can be triggered manually in the GitLab pipeline. Results will appear in the Benchmarking Platform UI after completion. |
17c0f4e to
9b8b55c
Compare
413ffd3 to
4f242cb
Compare
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. |
There was a problem hiding this comment.
More details
Static review found no actionable compatibility gaps in legacy provider matching, initialization bypass, or default-value evaluation. Runtime behavior remains unverified.
🤖 Bits Code Review · Commit 4f242cb
4f242cb to
b2884a9
Compare
b2884a9 to
9e36453
Compare
There was a problem hiding this comment.
More details
Static review supports that the legacy-provider fallback avoids loading the removed bootstrap evaluator and returns caller defaults for all five evaluation types, including when Feature Flags is disabled.
🤖 Bits Code Review · Commit 0b85f6e
0b85f6e to
6c105cc
Compare
Released providers, from 1.56 to 1.68, link to the agent bootstrap API the bridge replaced: make them return the caller defaults instead of failing. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Replace the legacy provider instrumentation tests, which loaded a released provider in a dedicated class loader, with a smoke test running an application built with the released dd-openfeature 1.67.1, with and without Feature Flags enabled. Drop the IDEA module configuration and use the static VERSION_11 import in the legacy provider instrumentation build. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Mark the instrumentation module and advice classes as unused, as they are only referenced through AutoService and advice class names, and import the Advice annotations statically. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
6c105cc to
1e13ef9
Compare
What Does This Do
Keeps applications using a released
dd-openfeatureSDK working with this agent:dd-openfeature-1.56instrumentation: released providers (1.56 to 1.68) link to the agent bootstrap API the bridge replaced; they now skip their legacy evaluator and return the caller defaults (PROVIDER_NOT_READY) with a warning to upgrade, instead of failing. It applies even with Feature Flags disabled, and is checked by muzzle against every released version.Motivation
The previous PR removes the agent-coupled provider API (APMLP-1512). Merge right after it: in between, released SDKs fail with this agent.
Additional Notes
Files
LegacyProviderInstrumentation,LegacyProviderAdviceinitialize()and return defaults from the evaluation methods of legacy providers (matched onloadEvaluatorClass())ignored_class_name.triedatadog.trace.api.openfeature.Provider:dd-smoke-tests:openfeature-legacydd-openfeature1.67.1 gets the caller defaults and the upgrade warning, with Feature Flags enabled or disabledStack
The full change is in #12709. It was split into this stack to ease the review.
Jira ticket: APMLP-1512
🤖 Generated with Claude Code