Skip to content

Conversation

alexandraoberaigner
Copy link
Contributor

@alexandraoberaigner alexandraoberaigner commented Oct 9, 2025

This PR

This pull request updates the Selector logic in the flag store to allow selecting flags without a flagSetId (flagSetId=).

It also restricts selector expressions to a single key-value pair, and updates / skips related tests. This is a temporary limitation pending a decision on the selector syntax (#1708).

Related Issues

#1708

Follow-up Tasks

TODO: we should decide on the selector syntax

How to test

  • run make run-flagd-selector-demo
  • experiment with queries & flag configurations with/without flagSetIds (be aware that the top level flagSetId is setting the flagSetId for all flags without already exisiting flagSetId):
grpcurl -d '{"selector":"flagSetId=example"}' -import-path schemas/protobuf/flagd/sync/v1/ -proto sync.proto -plaintext localhost:8015 flagd.sync.v1.FlagSyncService/SyncFlags | jq
grpcurl -d '{"selector":"flagSetId="}' -import-path schemas/protobuf/flagd/sync/v1/ -proto sync.proto -plaintext localhost:8015 flagd.sync.v1.FlagSyncService/SyncFlags | jq

@alexandraoberaigner alexandraoberaigner requested review from a team as code owners October 9, 2025 14:50
@alexandraoberaigner alexandraoberaigner changed the title feat: allow null flagSetId Selector, restrict Selector to single key-…(#1708) feat: allow null flagSetId Selector, restrict Selector to single key-value-pairs (#1708) Oct 9, 2025
@dosubot dosubot bot added the size:L This PR changes 100-499 lines, ignoring generated files. label Oct 9, 2025
@toddbaert
Copy link
Member

toddbaert commented Oct 9, 2025

This looks like the minimum workable implementation until we decide on a more robust Selector syntax. I'm not sure we even want to document this for now, but IMO it's releasable and will allow us to release something now without regretting it.

I'm ready to approve except I agree with @guidobrei 's comment here.

Copy link

netlify bot commented Oct 13, 2025

Deploy Preview for polite-licorice-3db33c canceled.

Name Link
🔨 Latest commit 5afde03
🔍 Latest deploy log https://app.netlify.com/projects/polite-licorice-3db33c/deploys/68efdc598a116b0008d90fce

@toddbaert
Copy link
Member

I'll merge this tomorrow unless I hear objections.

…value pair and update/skip tests (open-feature#1708)

Until we decide on the Selector syntax, only a single key=value pair is supported

Signed-off-by: Alexandra Oberaigner <[email protected]>
@toddbaert toddbaert merged commit c12a0ae into open-feature:main Oct 15, 2025
15 checks passed
@github-actions github-actions bot mentioned this pull request Oct 13, 2025
@toddbaert toddbaert deleted the feat/nullflagsetid branch October 16, 2025 14:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L This PR changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants