docs: establish project documentation baseline
This commit is contained in:
34
docs/decisions/003-central-users-local-active-user.md
Normal file
34
docs/decisions/003-central-users-local-active-user.md
Normal file
@ -0,0 +1,34 @@
|
||||
# 003 – Centrala användare och lokalt val av aktiv användare
|
||||
|
||||
## Status
|
||||
|
||||
Accepterat
|
||||
|
||||
## Datum
|
||||
|
||||
2026-07-24
|
||||
|
||||
## Sammanhang
|
||||
|
||||
HemHub behöver veta vem som använder gränssnittet, men har ännu ingen
|
||||
autentisering. Användarlistan ska vara gemensam medan själva valet kan vara
|
||||
lokalt för den aktuella browsern.
|
||||
|
||||
## Beslut
|
||||
|
||||
Användare lagras centralt via backend och hämtas från `/api/users`. Frontend
|
||||
lagrar endast vald användares UUID i `localStorage` med nyckeln
|
||||
`hemhub.activeUserId`.
|
||||
|
||||
Vid appstart jämförs det lokala id:t med backendens användarlista. Ett giltigt id
|
||||
återanvänds och ett ogiltigt id tas bort. `Logga ut` tar bort nyckeln och visar
|
||||
användarvalet igen.
|
||||
|
||||
## Konsekvenser
|
||||
|
||||
- Samma browser kan återanvända sitt senaste giltiga användarval.
|
||||
- En annan browser eller en rensad browserlagring måste välja användare igen.
|
||||
- Endast id lagras lokalt; aktuellt namn kommer från backendens lista.
|
||||
- Valet synkroniseras inte mellan browsers eller enheter.
|
||||
- Lösningen identifierar en användare i gränssnittet men ger ingen säker
|
||||
autentisering, session eller behörighetskontroll.
|
||||
Reference in New Issue
Block a user