Skip to content

feat: Support getExperimentFlag, trackEvent and trackExposure methods - #250

Open
flagsmithsmith[bot] wants to merge 3 commits into
mainfrom
openhands/sdk-spec-v0.7.1
Open

flagsmithsmith[bot] wants to merge 3 commits into
mainfrom
openhands/sdk-spec-v0.7.1

Conversation

@flagsmithsmith

@flagsmithsmith flagsmithsmith Bot commented Nov 5, 2026 •

Copy link
Copy Markdown
Contributor

Contributes to Flagsmith/sdk-spec#13

renovate Bot and others added 2 commits November 5, 2026 17:35
Its entry in Flagsmith/sdk-spec's compatibility matrix at v0.7.1: `core or events or local-evaluation`.
@flagsmithsmith flagsmithsmith Bot added the sdk-spec Bumps of the Flagsmith SDK behavioural spec label Nov 5, 2026
@coderabbitai

coderabbitai Bot commented Nov 5, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 7c342a21-742c-4416-acc2-65ffdd7df296

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

Spec v0.7.1 runs the `@events` scenarios for this SDK: getting an
experiment flag, tracking an event and tracking an exposure event, all
with events enabled. The SDK already implements these (#226), so the
steps file wires each step to FlagsmithClient.getExperimentFlag,
trackEvent and trackExposureEvent, and creates the events-enabled client
through FlagsmithConfig, next to the local evaluation client.

(cherry picked from commit 0c48af8)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@flagsmithsmith

flagsmithsmith Bot commented Nov 5, 2026

Copy link
Copy Markdown
Contributor Author

Re-applied 0c48af8 as 29cbe7b (test(sdk-spec): Run the experimentation steps against the SDK).

Why CI was red: this PR adds events to the spec tags. All five @events scenarios failed with "The SDK does not implement the step: Create the SDK client with events enabled". The steps file had no wiring for events yet.

What changed: only sdk-spec/Steps.java. The cherry-pick conflicted with the local evaluation client that main added since. I kept both client constructors. The steps wire to SDK features that already exist (#226):

  • Create the SDK client with events enabled → FlagsmithConfig.withEnableEvents(true).eventsUri(...)
  • the experiment flag, track event and track exposure steps → getExperimentFlag, trackEvent and trackExposureEvent

No library change was needed. v0.7.1's only new spec content is the empty-string tagline flag value, and the SDK already passed those scenarios in the previous run.

Verified locally: I ran the v0.7.1 runner against the spec's compose stack with core or events or local-evaluation. All 9 scenarios passed.

The red CodSpeed Macro Runners check is CodSpeed's own arm64 runner outage, not this change.

@codspeed

codspeed Bot commented Nov 5, 2026 •

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 15 untouched benchmarks


Comparing openhands/sdk-spec-v0.7.1 (29cbe7b) with main (e278fd5)

Open in CodSpeed

@flagsmithsmith
flagsmithsmith Bot marked this pull request as ready for review November 5, 2026 22:36
@flagsmithsmith
flagsmithsmith Bot requested a review from a team as a code owner November 5, 2026 22:36
@flagsmithsmith
flagsmithsmith Bot requested review from khvn26 and removed request for a team November 5, 2026 22:36
@flagsmithsmith flagsmithsmith Bot changed the title feat: Implement SDK spec v0.7.1 feat: Support getExperimentFlag, trackEvent and trackExposure methods Nov 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

sdk-spec Bumps of the Flagsmith SDK behavioural spec

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant