Repository navigation
Conversation
Publish ordered dependency evaluations, commit exposure batches only after successful root resolution, and bound exposure delivery and context capture. Co-Authored-By: Codex GPT-5 <noreply@localhost> Environment: Datadog workspace Co-authored-by: tyler.potter <tyler.potter@datadoghq.com>
Bound and flatten nested dependency context telemetry, preserve condition-source presence, and enforce the context node budget before enumeration. Environment: Datadog workspace Co-Authored-By: Codex GPT-5 <noreply@localhost>
Environment: Datadog workspace Co-Authored-By: Codex GPT-5 <noreply@localhost>
Environment: Datadog workspace Co-Authored-By: Codex GPT-5 <noreply@localhost>
Advertise bit 50 with FFE_FLAGS on the agent-based configuration path. Environment: Datadog workspace Co-Authored-By: Codex GPT-6 <noreply@localhost>
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
Capability bit 50 is advertised alongside bit 46 at remote-config startup, while agentless initialization advertises neither. The completed static review identified no actionable defects.
🤖 Bits Code Review · Commit 7a3dea5
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7a3dea53e4
ℹ️ 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".
|
|
||
| public static readonly BigInteger FfeFlagConfigurationRules = Create(46); | ||
|
|
||
| public static readonly BigInteger FfeFlagDependentFlagVariantKeyV1 = Create(50); |
There was a problem hiding this comment.
Update the sparse capability invariant for bit 50
Adding bit 50 makes the existing CapabilitiesHaveNoGaps unit test fail deterministically: reflection now returns 48 public fields, so the test expects bits 0–47, while the actual set is bits 0–46 and 50. Update that invariant to accommodate externally assigned sparse capability IDs, or explicitly model the missing indices without advertising unsupported capabilities, so the managed test suite can pass.
Useful? React with 👍 / 👎.
BenchmarksBenchmark execution time: 2026-11-04 19:56:39 Comparing candidate commit 7a3dea5 in PR branch Found 0 performance improvements and 0 performance regressions! Performance is the same for 72 metrics, 0 unstable metrics, 6 known flaky benchmarks, 119 flaky benchmarks without significant changes.
|
Execution-Time Benchmarks Report ⏱️Execution-time results for samples comparing This PR (9613) and master. ✅ No regressions detected |
| _rcmSubscription = new Subscription(ffeProduct.UpdateFromRcm, RcmProducts.FfeFlags); | ||
| _rcmSubscriptionManager.SubscribeToChanges(_rcmSubscription); | ||
| _rcmSubscriptionManager.SetCapability(RcmCapabilitiesIndices.FfeFlagConfigurationRules, true); | ||
| _rcmSubscriptionManager.SetCapability(RcmCapabilitiesIndices.FfeFlagDependentFlagVariantKeyV1, true); |
There was a problem hiding this comment.
🤖 Comment from Claude working with Aaron Silverman:
Heads up: #9589 now advertises bit 50 itself. At its head (05d9f09), this line registers FeatureFlagCapabilities.RemoteConfigMask(FeatureFlagsEvaluator.GetCapabilities()), and it defines RcmCapabilitiesIndices.FfeFlagDependentFlagVariantKeyV1 = Create(50). GetCapabilities() reports dependent-flag-variant-key-v1, so the mask includes bits 46 and 50. That is why this PR now conflicts here.
In the ffe-dogfooding bench, a merge that keeps the #9589 line advertised bits 46 and 50 and received the dependency-bearing UFC. This PR looks redundant now. The CapabilitiesHaveNoGaps failure that the Codex review found applies to #9589 as well.
b960e52 to
3ed5311
Compare
Summary of changes
Advertise remote-config capability bit 50 (
FfeFlagDependentFlagVariantKeyV1) alongside bit 46 when subscribing toFFE_FLAGSon the agent-based path.Reason for change
Stacked on #9589, which implements dependent flag evaluation and telemetry. Bit 50 lets agent-based remote config deliver dependent flag configurations, matching the Python reference.
Implementation details
Register the bit in the shared capability indices and enable it at the existing remote-config subscription startup.
Test coverage
Add a theory checking that module creation advertises bits 46 and 50 for
remote_config, and advertises neither foragentless. Tests could not run locally because the .NET SDK is unavailable (dotnet: command not found).git diff --checkpassed.Other details
The capability is advertised before the first flag evaluation, using the existing startup subscription.