Flagsmith / Flagsmith/flagsmith

Introduce the SDK Evaluation Context object

Open
#4,413 4 comments 0 reactions 0 assignees View on GitHub
api sdk
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.