Skip to content

test(ffe/ruby): enable agentless configuration-source coverage [ruby@pavlo.khrebto/FFLSDK-10/provider-initialization] - #7683

Draft
pavlokhrebto wants to merge 3 commits into
mainfrom
pavlo.khrebto/FFLSDK-10/ruby-agentless-adjustments
Draft

test(ffe/ruby): enable agentless configuration-source coverage [ruby@pavlo.khrebto/FFLSDK-10/provider-initialization]#7683
pavlokhrebto wants to merge 3 commits into
mainfrom
pavlo.khrebto/FFLSDK-10/ruby-agentless-adjustments

Conversation

@pavlokhrebto

@pavlokhrebto pavlokhrebto commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Motivation

The Ruby tracer stack adds agentless Feature Flagging configuration delivery while preserving the existing Remote Configuration path. This PR aligns the Ruby test applications with the resulting provider initialization lifecycle and enables the shared configuration-source contracts for Ruby 2.43.0-dev.

Warning

This PR must not merge until the complete dd-trace-rb stack is merged: #6295 into #6294, #6294 into #6292, #6292 into #6291, and finally #6291 into master.

Changes

  • Replace Ruby test-app polling of private provider state with OpenFeature::SDK.set_provider_and_wait, returning HTTP 500 when initialization fails.
  • Start the parametric app's generic Remote Configuration worker only when the tracer has not already started it for the selected FFE source.
  • Enable the parametric configuration-source suite and Rails agentless end-to-end suite at v2.43.0-dev.

Validated locally with all 29 parametric configuration-source cases and the Rails agentless scenario passing.

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?

@linear-code

linear-code Bot commented Sep 9, 2026

Copy link
Copy Markdown

FFLSDK-10

@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

CODEOWNERS have been resolved as:

manifests/ruby.yml                                                      @DataDog/system-tests-reviewers
utils/build/docker/ruby/parametric/server.rb                            @DataDog/system-tests-reviewers
utils/build/docker/ruby/rails72/app/controllers/open_feature_controller.rb  @DataDog/system-tests-reviewers

@pavlokhrebto pavlokhrebto changed the title feat(ruby): enable agentless feature flag configuration tests test(ffe/ruby): enable agentless configuration-source coverage Sep 9, 2026
@datadog-prod-us1-4

datadog-prod-us1-4 Bot commented Sep 9, 2026

Copy link
Copy Markdown

Pipelines  Tests

⚠️ Warnings

Your PR has failed checks. Please review the issues below and take necessary action before merging.

🚦 22 Pipeline jobs failed

Testing the test | System Tests (python, dev) / End-to-end #2 / django-py3.13 2 — ❌ 1 test failed · 🔧 Needs a code fix, caused by this PR

View more details · View in GitHub Actions

❌ tests.stats.test_stats.Test_Client_Stats_With_Client_Obfuscation_Disabled.test_obfuscation[django-py3.13] from system_tests_suite
AssertionError: Datadog-Obfuscation-Version header not found on any stats payload
assert False

self = <tests.stats.test_stats.Test_Client_Stats_With_Client_Obfuscation_Disabled object at 0x7f272c8e5e50>

    def test_obfuscation(self):
        """Test that SQL resources are obfuscated before stats aggregation.
    
        Validates:
        - Datadog-Obfuscation-Version header is present on stats payloads
...
Testing the test | System Tests (python, dev) / End-to-end #2 / fastapi 2 — ❌ 1 test failed · 🔧 Needs a code fix, caused by this PR

View more details · View in GitHub Actions

❌ tests.stats.test_stats.Test_Client_Stats_With_Client_Obfuscation_Disabled.test_obfuscation[fastapi] from system_tests_suite
AssertionError: Datadog-Obfuscation-Version header not found on any stats payload
assert False

self = <tests.stats.test_stats.Test_Client_Stats_With_Client_Obfuscation_Disabled object at 0x7f785007c710>

    def test_obfuscation(self):
        """Test that SQL resources are obfuscated before stats aggregation.
    
        Validates:
        - Datadog-Obfuscation-Version header is present on stats payloads
...
Testing the test | System Tests (python, dev) / End-to-end #2 / tornado 2 — ❌ 1 test failed · 🔧 Needs a code fix, caused by this PR

View more details · View in GitHub Actions

❌ tests.stats.test_stats.Test_Client_Stats_With_Client_Obfuscation_Disabled.test_obfuscation[tornado] from system_tests_suite
AssertionError: Datadog-Obfuscation-Version header not found on any stats payload
assert False

self = <tests.stats.test_stats.Test_Client_Stats_With_Client_Obfuscation_Disabled object at 0x7fd247c6e000>

    def test_obfuscation(self):
        """Test that SQL resources are obfuscated before stats aggregation.
    
        Validates:
        - Datadog-Obfuscation-Version header is present on stats payloads
...

View all 22 failed jobs.

ℹ️ Info

No other issues found (see more)

❄️ No new flaky tests detected

Useful? React with 👍 / 👎

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

@pavlokhrebto pavlokhrebto changed the title test(ffe/ruby): enable agentless configuration-source coverage test(ffe/ruby): enable agentless configuration-source coverage [ruby@pavlo.khrebto/FFLSDK-10/provider-initialization] Sep 10, 2026
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