web-261 Platzhalter — Taeglich-Bonus (ENABLE_DAILY_BONUS)
web-261 Platzhalter — Shop (ENABLE_SHOP)
BETA – Data Loss / Reset / Wipe möglich!
Patch-Notes v0.8.5
18.08.2026
Neu
- Mobile-Viewer Tower-Karte als in-flow Dock der Bottom-Nav (Akzentlinie statt Rahmen, Leiste bleibt Overlay bottom:0, --rimcard-space entfaellt, Endscreen-Hide, 18 Tests, Live-CDP DPR1+3)
- Viewer Template-Panel - 'Zurueck zu AllMode' im Zustand fertig + zustandswahrer Subtext (Server-SSOT, aria-busy bis Poll/8s, opts.onAllModeBack injiziert, _syncActions-Rollenwechsel-Fix, 36 Tests, Glossar)
- Sockel-Inventar Filter nach Effekt (Einfach-Auswahl, Muster Sortierleiste, LS-Persistenz, 18 Tests, CSS-Kaskaden-Fix Leer-Slots) + ui-474 Ticket (Onboarding-Auto-Klick x dash-tabs Vollnav-Fallback, P2)
- Viewer Template-Panel - Shortcut 'Template bearbeiten' im Zustand aktiv (Ghost-Button Variante B, opts.onEditTemplate injiziert, Desktop Setup-Popin/Mobile Setup-Screen Waffe-Tab, 20 Tests, Glossar)
Fix
- Onboarding-Auto-Klick x dash-tabs - Bereitschafts-Signal (CTDashTabsReady + ct:dash-tabs-ready) statt Ladereihenfolge-Race, frischer Nutzer bleibt im Setup-Popin (20/20 -> 0/20, 4 Tests, README-Falle)
- .tab-badge totes vertical-align entfernt (Flex-Parent zentriert; Ink-Scan 3 Kontexte x 2 DPR: Box-Delta 0px, Fiftys Symptom nicht reproduziert - vermutl. stale SW-Cache Prod v0.8.4) + Bucket AB
- Mobile-PWA Canvas-Bitmap folgt der Stage-Box via ResizeObserver (Ellipse + Tower zu hoch behoben)
Unter der Haube
- Cache-Busting ?v=buildId via staticUrl() an allen /static-Links + sw.js CACHE_VERSION an buildId (Mini-SSR-Route) (P7-Kette 5/9)
- Companion-Client Endzustand - app.js/dash-tabs/surface-nav/highscore ESM, Zweitports + Lade-Shims weg, CTUtil 14->2, sw.js SHELL_ASSETS v5 (P7-Kette 4/9)
- /viewer_mobile.html Uebergangs-Redirect entfernt (404, Referenz-Sweep, Zwei-Guard-Test) (P7-Kette 3/9)
- ?obs-Abriss - Rest-Guards, game-ref-API, Element-Injektionen, CSS, Spec/Glossar (P7-Kette 1/9)
- HANDOFF Frontend-Neubau Phase 7 KOMPLETT (be8e0630) + Bucket U Lock-1-Desktop geschlossen (Fifty-Entscheid: so lassen)
- Spec + Glossar + web/client/README auf Endzustand (README 2196->334 Modul-Karte/Fallen-Register/Historie, Spec-Sweep, Glossar-Dev 13/14 triagiert, Bucket AA, Kommentar-Nachzuegler 7 Dateien) (P7-Kette 9/9 - FINALE)
- Kommentar-Kur src/** (30 von 50 Dateien, Strip-Hash 50/50 identisch, ~60 viewer.html-Faktenkorrekturen + Bucket-T-Selbstverweise, sniper.js -78, Locks woertlich, Pixel-Beweis) (P7-Kette 8/9)
- Kommentar-Kur elements/** + desktop/mobile main.js (23 Dateien, Kommentare -14%, Strip-Hash 23/23 identisch, Pixel-Beweis, 16 Zeiger-Drifts inline) (P7-Kette 7/9)
- Kleinfixes - ops-alert Content-Cap <=1990 + snapshotKB aus snapshotMsg (byte-identisch, Envelope-Abzug) + WARN-Hysterese 0.9/Teardown-Summary/Grammatik (+8 Tests) + srv-153 Review-Cleanup-Ticket (P7 Block B 5/5)
- Kommentar-Kur Neubau-Kern (core/ + surfaces/ + boot.js + css/**, 33 Dateien, Kommentare -8,1%, Strip-Hash + CSSOM byte-identisch, 2 Faktenkorrekturen + 4 viewer_mobile-Stale-Refs) (P7-Kette 6/9)
- GET /dev/spawn-enemies Dev-Route fuer Massen-Spawn (room/count<=10000/type/spread, Guards 404/409/400, 12 Tests, OVERLOAD_GUARD-Interaktion belegt) + PTR-Lastprobe-Rezept (P7 Block B 4/5)
- snapshotKB-Warnflut - Flankendetektion statt Dauer-Spam + Schwelle 50->100 KB (CONFIG.SNAPSHOT_KB_WARN, 10 Tests, Format-Lock) + srv-151 um Review-Nachzuegler erweitert (P7 Block B 3/5)
- CSS-Kommentar-Landminen-Guard im syntax-check (dep-freie State-Machine naiv/geheilt, 21 CSS-Dateien, 13 Tests) + meta-043 Review-Cleanup-Ticket (P7 Block B 2/5)
- deploy.sh/deploy-ptr.sh Post-Smoke-Routen (/konto-loeschen, /impressum, /viewer.html, /) + smoke-routes.sh Lib + 64 Shell-Tests (P7 Block B 1/5)
- /api/me/command Alt-Endpoint entfernt (404-Stub bewusst, /actions byte-gleich, ChatAdapter unangetastet) (P7-Kette 2/9)
- HANDOFF v0.8.4 Prod-Deploy Eintrag (Phase-5-Eintrag rotiert raus)