# Roadmap ## Current State (2026-03-18) - Browser-first service (`steam`) är testbar med låg-risk baseline. - Moonlight service (`steam-moonlight`) finns som opt-in scaffold med dokumenterade risker. - Operativa säkerhetskrav finns i `SECURITY.md` och `MOONLIGHT-RUNTIME-CHECKLIST.md`. ## Next Milestone: Moonlight Test-Ready (Fail-Closed) Mål: Moonlight-profilen ska vägra starta vid osäker konfiguration. 1. Enforce credentials - Blockera start om `SUNSHINE_PASS` är tomt eller default (`change-me`). - Blockera start om `SUNSHINE_USER` är tomt. 2. Enforce GPU/device prerequisites - Blockera start om `GPU_CARD_DEVICE` eller `GPU_RENDER_DEVICE` saknas på host. - Blockera start om `/dev/fuse` eller `/dev/uinput` saknas. 3. Enforce network safety baseline - Tydlig varning + explicit opt-in env för internet-exponering. - Defaultantagande: LAN/VPN-only drift. 4. Preflight command and runbook - Lägg till en verifierbar preflight-sekvens som måste passera före `up`. - Uppdatera checklistan med pass/fail-kriterier. ## Hardening Milestone 1. Secrets hygiene - Dokumentera rotationsintervall för Sunshine-credentials. - Säkerställ att exempel aldrig innehåller riktiga credentials. 2. Capability minimization - Verifiera om någon `cap_add` kan tas bort utan funktionsförlust. - Dokumentera minsta uppsättning capabilities per use-case. 3. Upgrade discipline - Definiera rutin för image-pin uppdatering (`tag + digest`) och rollback. ## Release Criteria (Moonlight) För att kalla Moonlight-profilen releaseklar ska följande vara uppfyllt: 1. Fail-closed enforcement implementerat och verifierat. 2. Positiv test av Moonlight streaming med korrekt auth. 3. Negativ test: start blockeras vid osäkra defaults/missing devices. 4. `./scripts/validate-appstore.sh --enforce-risk-docs` passerar. 5. README + security docs uppdaterade med slutlig driftmodell.