Skip to content

feat(Flag Dependency): Evaluate flags that depend on other flags - #74

Open
emyller wants to merge 3 commits into
mainfrom
feat/sdk-8-flag-dependency
Open

emyller wants to merge 3 commits into
mainfrom
feat/sdk-8-flag-dependency

Conversation

@emyller

@emyller emyller commented Oct 30, 2026

Copy link
Copy Markdown
Contributor

Local evaluation ignores segments that target flags by other flags, and environment flags ignore every segment, so the SDK serves different flags than Flagsmith.

Closes SDK-8. Depends on Flagsmith/flagsmith-rust-flag-engine#44; merge once it's released. Tested by sdk-spec v0.7.0.

Changes

  • Identity and environment flags apply overrides of segments that depend on other flags.
  • Environment flags apply overrides of segments that need no identity.

🤖 Generated with Claude Code

Local evaluation now serves flags that depend on other flags, and environment
flags apply segments that need no identity, as Flagsmith does.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@emyller
emyller requested a review from a team as a code owner October 30, 2026 20:22
@emyller
emyller requested review from khvn26 and removed request for a team October 30, 2026 20:22
@linear-code

linear-code Bot commented Oct 30, 2026

Copy link
Copy Markdown

SDK-8

@coderabbitai

coderabbitai Bot commented Oct 30, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

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: 8f723042-33f6-4e69-a4d0-92e19b6b82dc
  • 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

Comment @coderabbitai help to get the list of available commands.

@emyller emyller self-assigned this Oct 30, 2026
@codspeed

codspeed Bot commented Oct 30, 2026 •

Copy link
Copy Markdown

Merging this PR will improve performance by ×2.3

⚡ 14 improved benchmarks
✅ 1 untouched benchmark
⏩ 15 skipped benchmarks1

Performance Changes

Benchmark BASE HEAD Efficiency
⚡ get_identity_flags_no_traits[small] 1,400.3 µs 387.9 µs ×3.6
⚡ get_identity_flags_with_identity_overrides[small] 1,407.1 µs 394.1 µs ×3.6
⚡ get_identity_flags_no_traits[large] 45.1 ms 15.4 ms ×2.9
⚡ get_identity_flags_with_identity_overrides[large] 45.1 ms 15.4 ms ×2.9
⚡ get_identity_segments_with_traits[large] 52 ms 20.8 ms ×2.5
⚡ get_identity_flags_no_traits[medium] 7.5 ms 3 ms ×2.5
⚡ get_identity_flags_with_identity_overrides[medium] 7.5 ms 3 ms ×2.5
⚡ get_identity_flags_with_traits[large] 54 ms 22.7 ms ×2.4
⚡ get_identity_segments_with_traits[medium] 8.6 ms 3.9 ms ×2.2
⚡ get_identity_flags_with_traits[medium] 9.1 ms 4.5 ms ×2
⚡ get_identity_segments_with_traits[small] 2.2 ms 1.2 ms +89.78%
⚡ get_identity_flags_with_traits[small] 2.2 ms 1.2 ms +87.21%
⚡ get_environment_flags[medium] 2.1 ms 1.6 ms +33.65%
⚡ get_environment_flags[large] 7.9 ms 6.1 ms +30.2%

Tip

Curious why performance improved? Comment @codspeedbot explain why performance improved on this PR, or directly use the CodSpeed MCP with your agent.


Comparing feat/sdk-8-flag-dependency (5a7d002) with main (6649750)

Open in CodSpeed

Footnotes

  1. 15 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩

… environment update

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
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