Logout leaves databrowser blank/stale until manual reload
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- javascript
- Ambito
- authentication, frontend
Direzione di ricerca
Non sono indicati file o test specifici. Inizia individuando gli handler login, logout e sessionRestore di authSession e l’attuale percorso di bootstrap di databrowser o di rendering di URL-subject in solid-panes/mashlib; verifica le transizioni nell’hosting in stile JSS e Pivot senza richiedere un ricaricamento manuale.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
After logout, the databrowser UI can end up blank or stale and does not reliably recover until a manual browser reload. This appears to be a client lifecycle issue in the current solid-panes/mashlib integration, not a server-specific auth failure.
Expected behavior
On logout (and similarly login / sessionRestore), the client should consistently re-render from current URL state without requiring a manual reload.
Actual behavior
Header/auth state updates, but the main databrowser view is not always reinitialized/rerendered. In practice, users sometimes need F5 to get the normal outline/dashboard view back.
Environment / observed on
- mashlib: 2.2.0
- Server tested: JavaScriptSolidServer (JSS) with mashlib CDN mode
- Also compared with Pivot server behavior (different hosting model, static assets), which may mask this by effectively reloading/reinitializing in its flow.
Why this seems client-side
Current flows react to auth events (header/dashboard updates), but there is no guaranteed “auth transition -> rerender current subject” path equivalent to a full databrowser bootstrap.
Symptoms suggest:
- logout triggers partial UI updates (header/menu/dashboard close),
- but not a deterministic re-render/init of main subject view.
Proposal
Create a single auth-transition handler in client code (solid-panes/mashlib) used for:
authSession.events.on('login', ...)authSession.events.on('logout', ...)authSession.events.on('sessionRestore', ...)
Handler should:
await authn.checkUser()- reset/close transient UI state (dashboard/menu if needed)
- re-render current URL subject (or re-run equivalent of initial databrowser render path)
- avoid requiring page reload
Acceptance criteria
- Logout does not require manual browser reload to restore a usable databrowser view.
- Login/sessionRestore behave consistently with logout transition handling.
- Works across hosting styles:
- static databrowser asset hosting (e.g., Pivot)
- server-generated databrowser HTML wrappers (e.g., JSS)
Notes
As a temporary server-side mitigation, forcing location.reload() on logout works, but this should not be the long-term fix. The robust fix should live in the client lifecycle so behavior is server-agnostic.
- Lingua principale
- JavaScript
- Stelle
- 106
- Fork
- 52
- Merge medio
- 13h 35m
- PR unite (30g)
- 10
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di SolidOS/solid-panes
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
SolidOS/solid-panes#653 ·
-
Editing profile in storage Apertabug
SolidOS/solid-panes#758 · 4 commenti · 1 assegnatario ·
-
bug
SolidOS/solid-panes#761 · 1 assegnatario ·
-
bug
SolidOS/solid-panes#752 · 1 assegnatario ·
-
Feature Audit: Access Icons Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
SolidOS/solid-panes#751 · 1 commento ·
Tutte le issue di SolidOS/solid-panes
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
mksglu/context-mode#1200 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
neondatabase/website#5944 ·
-
module: core
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
bigbluebutton/bigbluebutton#25849 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
jaegertracing/jaeger-ui#4506 ·