Feature values always have type string when using local evaluation mode
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 42/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- nodejs, typescript
- Área
- backend
Línea de trabajo
Comienza con la ruta del cliente de Flagsmith que recorren getEnvironmentFlags() y getFlag() cuando enableLocalEvaluation es true, utilizando el script de TypeScript proporcionado para reproducir los distintos tipos de valores. Compara el resultado de la evaluación local con el resultado de la API y verifica que los valores numéricos de las features conserven su tipo numérico en ambos modos.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
We've started seeing an issue where number values like this one are being returned as type string when enableLocalEvaluation is set to true.
Using this test script I've validated that the local evaluation causes the change in behaviour (thanks Matt for the help 🙌 )
This has been tested on flagsmith-nodejs versions 2.5.1 and 3.2.0
import Flagsmith from 'flagsmith-nodejs';
async function main(): Promise<void> {
const flagClient = new Flagsmith({
environmentKey: 'ser.key',
enableLocalEvaluation: true,
enableAnalytics: false,
});
const environmentFlags = await flagClient.getEnvironmentFlags();
const flag = environmentFlags.getFlag('daisy.settlements.timeout');
console.log(`flagClient.apiUrl=${flagClient.apiUrl}`);
console.log(`flagClient.enableLocalEvaluation=${flagClient.enableLocalEvaluation}`);
console.log(JSON.stringify(flag));
console.log(`typeof flag.value=${typeof flag.value}`);
await flagClient.close();
}
void main();
enableLocalEvaluation=true
flagClient.apiUrl=https://edge.api.flagsmith.com/api/v1/
flagClient.enableLocalEvaluation=true
{"value":"60000","enabled":true,"isDefault":false,"featureId":62178,"featureName":"daisy.settlements.timeout"}
typeof flag.value=string
enableLocalEvaluation=false
flagClient.apiUrl=https://edge.api.flagsmith.com/api/v1/
flagClient.enableLocalEvaluation=false
{"value":60000,"enabled":true,"isDefault":false,"featureId":62178,"featureName":"daisy.settlements.timeout"}
typeof flag.value=number
- Lenguaje dominante
- TypeScript
- Estrellas
- 30
- Forks
- 27
- Merge medio
- 20 h 52 min
- PR fusionados (30 d)
- 6
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de Flagsmith/flagsmith-nodejs-client
-
Dificultad 4/5 3-5 días Aptitud para principiantes 65/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
-
Dependency Dashboard Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
Flagsmith/flagsmith-nodejs-client#273 · 1 comentario ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
Flagsmith/flagsmith-nodejs-client#267 · 5 comentarios ·
Todos los issues de Flagsmith/flagsmith-nodejs-client
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
mksglu/context-mode#1200 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
jaegertracing/jaeger-ui#4506 ·
-
area:desktop area:ui bug platform:macos
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
anthropics/claude-code#96687 ·
-
good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 95/100
AOSSIE-Org/DebateAI#582 · 2 comentarios ·