Skip to content

test(ffe): cover billed configuration source opt-ins#7332

Draft
leoromanovsky wants to merge 2 commits into
mainfrom
leo.romanovsky/ffl-2731-nodejs-configuration-contract
Draft

test(ffe): cover billed configuration source opt-ins#7332
leoromanovsky wants to merge 2 commits into
mainfrom
leo.romanovsky/ffl-2731-nodejs-configuration-contract

Conversation

@leoromanovsky

@leoromanovsky leoromanovsky commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Motivation

CDN polling and Agent Remote Configuration delivery both have customer billing impact. The shared configuration-source contract must prove that neither path starts implicitly, and that the provider kill switch does not silently cancel a source the customer explicitly selected.

Node implementation: DataDog/dd-trace-js#9413

Changes

  • uses DD_FEATURE_FLAGGING_PROVIDER_ENABLED in the source-selection suite
  • asserts explicit remote_config advertises the FFE capability and applies FFE_FLAGS
  • asserts explicit agentless reaches the controlled CDN mock without advertising the FFE RC capability
  • adds provider-disabled cases proving explicit CDN polling and RC subscription still run
  • adds an unset-source case proving no CDN request and no FFE RC capability
  • adds exact Content-Length to mock responses and self-tests it so Node 18 fetch can consume the controlled JSON:API payload

Decisions

  • An unset source is the billing-safe default and starts neither delivery path.
  • Provider registration and delivery-source activation are independent assertions.
  • The Node manifest is not activated here because the first released tracer version containing feat(openfeature): make billed configuration sources opt-in dd-trace-js#9413 is not fixed yet.
  • The mock continues to validate the managed dd_env query and now also emits a complete HTTP response framing contract.

Validation Evidence

  • 7/7 Node configuration-source selection cases pass against the local tracer.
  • 3/3 mock backend self-tests pass.

@github-actions

Copy link
Copy Markdown
Contributor

CODEOWNERS have been resolved as:

tests/parametric/test_ffe/test_configuration_sources.py                 @DataDog/feature-flagging-and-experimentation-sdk @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/docker_fixtures/_mock_ffe_agentless_backend.py                    @DataDog/feature-flagging-and-experimentation-sdk @DataDog/system-tests-core

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