Cluster sign-out leaves an instance signed in once its instanceFqdn disappears
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 77/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
- Área
- authentication
Línea de trabajo
Empieza por src/lib/types/isInstance.ts y sigue cómo src/features/auth/store/authStore.ts deriva las claves de autenticación y cómo src/features/clusters/components/ClusterCard.tsx cierra la sesión de las instancias. Reproduce la secuencia descrita con una instancia que pierde su instanceFqdn; se considera terminado cuando el cierre de sesión del clúster borra su marcador de inicio de sesión, el usuario y la marca de Fabric Connect. En el issue no se menciona ningún archivo de prueba.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
Cluster Sign Out cannot clear an instance's sign-in once that instance comes back from central manager without an instanceFqdn. Its sign-in marker, user and Fabric Connect flag survive until the user signs out of the app.
Cause
authStore.setUserForEntity (src/features/auth/store/authStore.ts, ~line 359) returns early when calculateIdFromEntity or calculateKeyFromEntity yields nothing. Both decide "is this an instance?" with isInstance (src/lib/types/isInstance.ts), which is !!instance.instanceFqdn. So an instance object without an FQDN is neither an instance nor a cluster to the store, and the cluster sign-out loop (src/features/clusters/components/ClusterCard.tsx, ~line 116) skips it.
The path: sign in to an instance while it has an FQDN, then a later GET /Cluster/<id> lists it without one (the shape behind #2020), then sign out of the cluster.
Impact
Same user only, and app sign-out still clears everything. Not observed in production; found by code trace during review of the #2020 fix, which closed the other route to this state (Fabric Connect to an instance that never had an address).
Suggested fix
Key an instance's auth by instance.id rather than by whether it has an FQDN: make isInstance discriminate on something an address-less instance still has (for example the ins- id prefix getInstanceClient already uses), or have cluster sign-out call signOutLocally(instance.id) directly.
Review-Deferral: 293e0b262f5c7343 severity=minor category=security
🤖 Generated by Claude Code (Claude Opus 5.5); posted via @dawsontoth.
- Lenguaje dominante
- TypeScript
- Estrellas
- 5
- Forks
- 4
- Merge medio
- 1 d 20 h
- PR fusionados (30 d)
- 140
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la 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 HarperFast/studio
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
HarperFast/studio#2070 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
HarperFast/studio#2067 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
HarperFast/studio#2053 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
HarperFast/studio#2026 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
HarperFast/studio#1993 ·
Los mantenedores suelen responder en 2 días
Todos los issues de HarperFast/studio
Issues similares
-
area:cards enhancement ready-for-agent
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
fil-donadoni/tolaria#8883 ·
Los mantenedores suelen responder en 1 día
-
xsd:integer cast from a string rejects negative numbers, a leading + and surrounding whitespaceAbiertobug 🐛
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
comunica/comunica#1960 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Waiting for: Product Owner
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
getsentry/sentry-javascript#26203 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
bytedance/flowgram.ai#1235 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
devswha/herdr-web-ui#3325 ·