Flagsmith / Flagsmith/flagsmith
Introduce the SDK Evaluation Context object
- Dominant language
- Python
- Stars
- 6.6k
- Forks
- 567
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 121
Description
## Abstract
While implementing #4278, a [discussion](https://github.com/Flagsmith/flagsmith-go-client/pull/133#discussion_r1694892206) has occurred about how we should approach SDK changes in the future.
The consensus is we should take after OpenFeature and implement a common _evaluation context object_ that a single `getFlags` interface should accept as its only input.
I'm creating this issue as a hub for further implementation discussion and planning.
## Schema proposal
You can observe and review the proposed schema in #4414.
## Implementation plan
For implementation phase 1, We should settle on one of the following:
- Implement it in the Golang SDK as part of #4278, and evolve the existing interfaces for the rest of the SDKs.
- Implement it for all SDKs as part of #4278.
For phase 2, we should consider a single `/api/v2/flags` API with a schema identical to the Evaluation Context schema. Should we go forward with this, it'll allow us to fully code generate remote evaluation parts of the SDKs!
Contributor guide
Assessment
This issue has not been assessed yet.