OFREP Single flag evaluation (Core API)
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
调研方向
首先定位 Core API 中现有的 identity flag 评估逻辑以及其他计费 endpoint,然后将它们在请求、持久化和计费方面的行为与 OFREP evaluateFlag 规范进行比较。根据验收标准,验证新 endpoint 的值回退、原因词汇、404 响应、identity-trait 持久化和计费行为。
由索引模型根据 Issue 内容生成。
描述
In order to implement the OFREP specification, our Core API needs a new endpoint that evaluates a single flag given a set of identity traits. The Edge API counterpart is Flagsmith/edge-api#712.
An interpretation of the specification to our data model is as the following example:
(request)
POST /ofrep/v1/evaluate/flags/{feature.name} HTTP/1.1
Host: {flagsmith_host}
X-API-Key: {server_side_environment_key}
Content-Type: application/json
{
"context": {
"targetingKey": "{identity.identifier}",
"trait1": "value1",
"trait2": "value2"
}
}
(response)
HTTP/1.1 200 OK
Content-Type: application/json
{
"key": "{feature.name}",
"value": "{multivariate_feature_option.value}",
"reason": "SPLIT",
"variant": "{multivariate_feature_option.key}"
}
(response, unknown flag)
HTTP/1.1 404 Not Found
Content-Type: application/json
{
"key": "{feature.name}",
"errorCode": "FLAG_NOT_FOUND"
}
Acceptance criteria
- Our API exposes a new endpoint
POST /ofrep/v1/evaluate/flags/{flagKey}compliant to the OFREP specification. As such, the endpoint:- Serves the flag's value as its remote configuration value, falling back to the flag's enabled state when no value is set.
- Reports the flag's evaluation reason using the vocabulary OFREP defines.
- Responds
404 Not Foundwhen the environment has no such flag. - Is billed similarly to other billed endpoints.
- Persists the identity and its traits on the same terms as identity flag evaluation.
- 主要语言
- Python
- 星标
- 7.1k
- 派生
- 603
- 平均合并
- 3 天 8 小时
- 30 天内合并 PR
- 102
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
Flagsmith/flagsmith 的其他 Issue
-
Expose whether an organisation is blocked for API usage可能已有人在做 @PiUnknown 于 26 天前认领。 未关闭
难度 2/5 1-3 小时 新手友好度 62/100
Flagsmith/flagsmith#8773 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 75/100
维护者通常 1 天内回复
-
Environment colors mismatch in audit log view可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭
难度 2/5 1-3 小时 新手友好度 85/100
Flagsmith/flagsmith#8681 · 1 条评论 ·
维护者通常 1 天内回复
-
influx_query_manager doesn't catch ApiException, so Influx error responses 500可能已有人在做 @SAY-5 于 1 天前认领。 未关闭
难度 2/5 1-3 小时 新手友好度 82/100
Flagsmith/flagsmith#8510 · 1 条评论 ·
维护者通常 1 天内回复
-
Sales dashboard: download_org_data 500s with "Object of type generator is not JSON serializable"可能已有人在做 @Iflaqbhat 于 46 天前认领。 未关闭
难度 2/5 1-3 小时 新手友好度 86/100
维护者通常 1 天内回复
查看 Flagsmith/flagsmith 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 62/100
openvinotoolkit/openvino_notebooks#3858 ·
维护者通常 1 天内回复
-
bug
难度 1/5 1 小时以内 新手友好度 88/100
hummingbot/hummingbot-api#256 ·
-
bug
难度 2/5 1-3 小时 新手友好度 80/100
-
area:other help wanted
难度 2/5 1-3 小时 新手友好度 70/100
WingedGuardian/GENesis-AGI#4734 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 70/100
peach-mitao/peach#693 ·
维护者通常 1 天内回复