Skip to content

fix(dotnet): declare FFE capability from 3.54 - #7612

Open
pavlokhrebto wants to merge 6 commits into
mainfrom
pavlo.khrebto/dotnet-3.53-ffe-capability
Open

pavlokhrebto wants to merge 6 commits into
mainfrom
pavlo.khrebto/dotnet-3.53-ffe-capability

Conversation

@pavlokhrebto

@pavlokhrebto pavlokhrebto commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Motivation

dd-trace-dotnet 3.54.0 recognizes DD_FEATURE_FLAGS_CONFIGURATION_SOURCE=remote_config and reports FFE_FLAG_CONFIGURATION_RULES during the Remote Config capability completeness test. The capability registry does not declare that bit for dotnet, so validation rejects the correctly reported capability as seen_but_not_expected and fails the dotnet parametric job.

Changes

Updates the version-aware dotnet capability registry so FFE_FLAG_CONFIGURATION_RULES is expected starting with dotnet 3.54.0. Earlier dotnet versions keep their existing expected capability set.

Also removes the temporary missing_feature declaration for test_default_capability_completeness from manifests/dotnet.yml, added in #7673. It bridged the window where this registry expected capability 46 but no published dotnet snapshot reported it. That window is closed, and leaving the waiver would disable the completeness check for dotnet permanently.

Decisions

The capability is declared at >=3.54.0 instead of in the dotnet base set. Earlier versions contain the registration code, but Feature Flags only started when the legacy DD_EXPERIMENTAL_FLAGGING_PROVIDER_ENABLED opt-in was set, which DEFAULT_ENVVARS does not set, so the capability was never observable. 3.53.0 enables Feature Flags by default, but the capability is only advertised from 3.54.0, when the tracer subscribes to FFE_FLAGS for the remote_config source. dotnet advertises it only for that source, matching Node, which gates on DD_FEATURE_FLAGS_CONFIGURATION_SOURCE === 'remote_config' in proxy.js.

Verification

  • ./format.sh — no changes
  • ./run.sh TEST_THE_TEST tests/test_the_test/test_capabilities.py — passed
  • dd-trace-dotnet #9044 merged on 2026-09-14 as 2fc97594, and the latest_snapshot image was rebuilt from that commit at 10:59 UTC, so the snapshot the dev jobs run now advertises the capability. Both halves of this PR therefore have to land together: the registry entry alone fails the released 3.53.0 job, and the waiver alone hides the check.
  • Earlier evidence, before the merge: with [dotnet@pavlo.khrebto/EX-2703/ffe-module-wiring] in the title, System Tests (dotnet, dev) / parametric passed on run 34122374529 against a branch image of #9044.

Workflow

  1. ⚠️ Create your PR as draft ⚠️
  2. Work on you PR until the CI passes
  3. Mark it as ready for review
    • Test logic is modified? -> Get a review from RFC owner.
    • Framework is modified, or non obvious usage of it -> get a review from R&P team

🚀 Once your PR is reviewed and the CI green, you can merge it!

🛟 #apm-shared-testing 🛟

Reviewer checklist

  • Anything but tests/ or manifests/ is modified ? I have the approval from R&P team
  • A docker base image is modified?
    • the relevant build-XXX-image label is present
  • A scenario is added, removed or renamed?

@github-actions

github-actions Bot commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

CODEOWNERS have been resolved as:

manifests/dotnet.yml                                                    @DataDog/system-tests-reviewers
tests/parametric/capabilities.yml                                       @DataDog/system-tests-reviewers

@datadog-prod-us1-5

datadog-prod-us1-5 Bot commented Aug 28, 2026

Copy link
Copy Markdown

Tests

🎉 All green!

🧪 All tests passed
❄️ No new flaky tests detected

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: cde1fb0 | Docs | View more details | Give us feedback!

@pavlokhrebto pavlokhrebto changed the title fix(dotnet): declare FFE capability from 3.53 fix(dotnet): declare FFE capability from 3.53 [dotnet@pavlo.khrebto/EX-2703/ffe-module-wiring] Sep 7, 2026
@pavlokhrebto pavlokhrebto changed the title fix(dotnet): declare FFE capability from 3.53 [dotnet@pavlo.khrebto/EX-2703/ffe-module-wiring] fix(dotnet): declare FFE capability from 3.53 Sep 7, 2026
@pavlokhrebto pavlokhrebto changed the title fix(dotnet): declare FFE capability from 3.53 fix(dotnet): declare FFE capability from 3.54 Sep 8, 2026
@pavlokhrebto
pavlokhrebto marked this pull request as ready for review September 14, 2026 12:37
@pavlokhrebto
pavlokhrebto requested a review from a team as a code owner September 14, 2026 12:37
@pavlokhrebto
pavlokhrebto requested review from NachoEchevarria, aarsilv and leoromanovsky and removed request for a team September 14, 2026 12:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants