Skip to content

test(ffe): enable .NET EVP flagevaluation egress - #7590

Closed
leoromanovsky wants to merge 5 commits into
pavlo.khrebto/FFL-2703/dotnet-agentless-configurationfrom
leo.romanovsky/ffe-agentless-evp-fallback-dotnet-tests
Closed

test(ffe): enable .NET EVP flagevaluation egress#7590
leoromanovsky wants to merge 5 commits into
pavlo.khrebto/FFL-2703/dotnet-agentless-configurationfrom
leo.romanovsky/ffe-agentless-evp-fallback-dotnet-tests

Conversation

@leoromanovsky

@leoromanovsky leoromanovsky commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

Motivation

.NET needs route-level system-test coverage for flag-evaluation EVP delivery through the Datadog Agent, direct intake, and the serverless sidecar.

Linear: FFL-1492

Changes

  • Enable the three .NET flag-evaluation egress cases at v3.53.0:
    • Datadog Agent
    • agentless direct intake
    • agentless serverless sidecar
  • Assert /api/v2/flagevaluation payload aggregation, selected route, direct intake host and status, direct DD-API-KEY authentication, and zero events on unused routes.
  • Keep the remaining .NET flag-evaluation behavior cases marked missing_feature (FFLSDK-28).

Decisions

  • Activate only the three egress cases validated against the branch-built tracer.
  • Use the same evaluation fixture and expected count in every topology.
  • Require direct-intake route isolation and raw DD-API-KEY authentication.

Validation

  • ./format.sh -- passed.
  • Focused TEST_THE_TEST manifest validation -- 32 passed.
  • Manifest parsing confirmed that only the Agent, direct, and sidecar egress cases are enabled; the basic flag-evaluation contract remains disabled.
  • ./build.sh dotnet -w poc -- passed against the branch-built tracer package.
  • Datadog Agent flag-evaluation egress -- 1 passed in 66.11s.
  • Agentless direct flag-evaluation egress -- 1 passed in 14.59s.
  • Agentless serverless-sidecar flag-evaluation egress -- 1 passed in 14.79s.

Workflow

  1. ⚠️ Create your PR as draft ⚠️
  2. Work on your PR until CI passes.
  3. Keep test-logic review with the RFC owner; ask the R&P team in #apm-shared-testing for framework or non-obvious harness changes.

Note

For system-test framework or scenario help, use #apm-shared-testing.

Reviewer checklist

  • Test logic has RFC-owner review.
  • Any framework or scenario change has R&P review in #apm-shared-testing.

@github-actions

github-actions Bot commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

CODEOWNERS have been resolved as:

tests/ffe/test_exposure_egress.py                                       @DataDog/feature-flagging-and-experimentation-sdk @DataDog/system-tests-core
tests/ffe/utils/exposures.py                                            @DataDog/feature-flagging-and-experimentation-sdk @DataDog/system-tests-core
.github/workflows/run-end-to-end.yml                                    @DataDog/system-tests-core
manifests/cpp_httpd.yml                                                 @DataDog/dd-trace-cpp
manifests/cpp_nginx.yml                                                 @DataDog/dd-trace-cpp
manifests/dotnet.yml                                                    @DataDog/apm-dotnet @DataDog/asm-dotnet
manifests/golang.yml                                                    @DataDog/dd-trace-go-guild
manifests/java.yml                                                      @DataDog/asm-java @DataDog/apm-java
manifests/nodejs.yml                                                    @DataDog/dd-trace-js
manifests/php.yml                                                       @DataDog/apm-php @DataDog/asm-php
manifests/python.yml                                                    @DataDog/apm-python @DataDog/asm-python
manifests/ruby.yml                                                      @DataDog/ruby-guild @DataDog/asm-ruby
manifests/rust.yml                                                      @DataDog/apm-rust
mirror_images.lock.yaml                                                 @DataDog/system-tests-core
mirror_images.yaml                                                      @DataDog/system-tests-core
tests/ffe/README.md                                                     @DataDog/feature-flagging-and-experimentation-sdk @DataDog/system-tests-core
tests/ffe/test_flag_eval_evp.py                                         @DataDog/feature-flagging-and-experimentation-sdk @DataDog/system-tests-core
tests/test_the_test/scenarios.json                                      @DataDog/system-tests-core
tests/test_the_test/test_compute_libraries_and_scenarios.py             @DataDog/system-tests-core
tests/test_the_test/test_group_rules.py                                 @DataDog/system-tests-core
tests/test_the_test/test_mock_ffe_agentless_backend.py                  @DataDog/feature-flagging-and-experimentation-sdk @DataDog/system-tests-core
utils/_context/_scenarios/__init__.py                                   @DataDog/system-tests-core
utils/_context/_scenarios/agentless_endtoend.py                         @DataDog/system-tests-core
utils/_context/containers.py                                            @DataDog/system-tests-core
utils/interfaces/__init__.py                                            @DataDog/system-tests-core
utils/proxy/core.py                                                     @DataDog/system-tests-core
utils/proxy/ports.py                                                    @DataDog/system-tests-core
utils/scripts/libraries_and_scenarios_rules.yml                         @DataDog/system-tests-core
tests/ffe/test_exposures_datadog_agent.py                               @DataDog/feature-flagging-and-experimentation-sdk @DataDog/system-tests-core

@datadog-official

datadog-official Bot commented Aug 26, 2026

Copy link
Copy Markdown

Tests

🎉 All green!

❄️ No new flaky tests detected

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

Stage flag-evaluation route validation beside the existing exposure egress contract and keep activation gated on the emitter dependency.

Environment: Datadog workspace

Co-Authored-By: Claude GPT-5 <noreply@anthropic.com>
@linear-code

linear-code Bot commented Aug 26, 2026

Copy link
Copy Markdown

FFL-1492

@leoromanovsky leoromanovsky changed the title test(ffe): validate .NET agentless EVP exposure egress test(ffe): validate .NET agentless EVP event egress Aug 26, 2026
Enable the three validated .NET EVP egress topologies.

Environment: Datadog workspace
@leoromanovsky leoromanovsky changed the title test(ffe): validate .NET agentless EVP event egress test(ffe): enable .NET EVP flagevaluation egress Aug 27, 2026
@leoromanovsky

Copy link
Copy Markdown
Contributor Author

Replaced by #7603.

@cbeauchesne
cbeauchesne deleted the leo.romanovsky/ffe-agentless-evp-fallback-dotnet-tests branch August 27, 2026 09:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant