OFREP Single flag evaluation (Core API)
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 55/100
Rechercherichtung
Beginne damit, die bestehende Auswertung von Identity-Flags und andere abgerechnete Endpunkte in der Core API zu lokalisieren, und vergleiche anschließend ihr Verhalten bei Requests, Persistenz und Abrechnung mit der Spezifikation von OFREP evaluateFlag. Überprüfe den Value-Fallback, das Reason-Vokabular, die 404-Antwort, die Persistenz von Identity-Attributen und das Abrechnungsverhalten des neuen Endpunkts anhand der Abnahmekriterien.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
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.
- Vorherrschende Sprache
- Python
- Sterne
- 7.1k
- Forks
- 603
- Ø Merge
- 3 T. 8 Std.
- Gemergte PRs (30 T.)
- 102
Entwicklungsumgebung
- Enthält ein Dockerfile oder eine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus Flagsmith/flagsmith
-
Expose whether an organisation is blocked for API usageEvtl. vergeben @PiUnknown hat das vor 27 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
Flagsmith/flagsmith#8773 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
Maintainer antworten meist innerhalb von 1 Tag
-
Environment colors mismatch in audit log viewEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
Flagsmith/flagsmith#8681 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
influx_query_manager doesn't catch ApiException, so Influx error responses 500Evtl. vergeben @SAY-5 hat das vor 1 Tag übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Flagsmith/flagsmith#8510 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Sales dashboard: download_org_data 500s with "Object of type generator is not JSON serializable"Evtl. vergeben @Iflaqbhat hat das vor 46 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in Flagsmith/flagsmith
Ähnliche Issues
-
agents nolte-linux security skills
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
nolte/claude-shared#732 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
Maintainer antworten meist innerhalb von 2 Tagen
-
[Bug] Source archive filter: dry run excludes SystemVerilog (.sv) files with no preflight warningOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
FinanceFlash/unvibecode#906 ·
Maintainer antworten meist innerhalb von 1 Tag