Skip to content

Enable Ruby OpenFeature evaluation on older weblogs#7199

Draft
leoromanovsky wants to merge 3 commits into
mainfrom
leo.romanovsky/ruby-openfeature-oldest-system-tests
Draft

Enable Ruby OpenFeature evaluation on older weblogs#7199
leoromanovsky wants to merge 3 commits into
mainfrom
leo.romanovsky/ruby-openfeature-oldest-system-tests

Conversation

@leoromanovsky

@leoromanovsky leoromanovsky commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Motivation

APM needs Ruby Feature Flags validation beyond the newest Rails weblog. The oldest Ruby system-tests image that can use the current useful OpenFeature SDK line is Ruby 3.1, so this broadens non-metric flag evaluation coverage to that floor and documents the practical support boundary for customers using OpenFeature hooks.

Changes

  • Adds OpenFeature SDK support and /ffe evaluation endpoints to the sinatra41 weblog.
  • Enables tests/ffe/test_dynamic_evaluation.py for uds-sinatra and direct sinatra41 on Ruby 3.1 while keeping rails72 coverage.
  • Leaves exposure, EVP, and OTel metric test declarations unchanged.

Decisions

  • Use openfeature-sdk ~> 0.5.1 instead of a broader ~> 0.5 range so Ruby 3.1 does not resolve the Ruby 3.4-only 0.6.x line.
  • Treat Ruby 3.1 as the oldest practical OpenFeature system-test target because the current useful OpenFeature Ruby SDK line requires Ruby >= 3.1.
  • Keep OTel metrics scoped to rails72; this PR proves core flag evaluation behavior on older Ruby, not hook-heavy metrics validation.

Validation Evidence

System Tests

@github-actions

Copy link
Copy Markdown
Contributor

CODEOWNERS have been resolved as:

manifests/ruby.yml                                                      @DataDog/ruby-guild @DataDog/asm-ruby
utils/build/docker/ruby/sinatra41/Gemfile                               @DataDog/ruby-guild @DataDog/asm-ruby @DataDog/system-tests-core
utils/build/docker/ruby/sinatra41/Gemfile.lock                          @DataDog/ruby-guild @DataDog/asm-ruby @DataDog/system-tests-core
utils/build/docker/ruby/sinatra41/app.rb                                @DataDog/ruby-guild @DataDog/asm-ruby @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