mirror of
https://github.com/Shik3i/KoalaSync.git
synced 2026-07-26 12:08:15 +00:00
1.4 KiB
1.4 KiB
KoalaSync Roadmap
This document tracks planned features, improvements, and their implementation details.
Offene technische Fragen
1. Service Worker Fallback bei Room-State Verlust
Manifest V3 suspendiert den Service Worker nach ~30s Inaktivität. chrome.alarms weckt ihn auf, aber:
- Problem: Wenn der SW neu startet, sind alle Variablen (
currentRoom,socket,isNamespaceJoined) weg - Aktueller Stand:
chrome.storage.sessionpersistiertcurrentRoom,peerId,eventQueue— der SW stellt diese beim Start wieder her (ensureState()) - Gelöst: WebSocket wird automatisch via
connect()neu aufgebaut. Events werden während Reconnect gequeued und nach Namespace-Join geflushed. "Reconnecting..." Status wird im Popup + Badge angezeigt. KeepAlive-Alarm auf 30s reduziert. Reconnect-Backoff: 500ms Basis, max 5s (statt vorher 1s→30s).
7. Tests für Extensions
Stimmt, sind aufwändig. Praktische Ansätze:
- Unit Tests:
jest+jest-chrome(mocktchrome.*APIs) — testetpopup.jsLogik, Server-Logik - Integration Tests:
puppeteermit--load-extensionFlag — testet Extension im echten Browser - Server Tests:
supertest+socket.io-client— testet WebSocket-Flows - Aufwand: ~400-600 LOC für sinnvolle Testabdeckung der Kernlogik
Zukünftige Features
Neue Features werden nur nach expliziter Freigabe hinzugefügt.