mirror of
https://github.com/Shik3i/KoalaSync.git
synced 2026-08-27 11:07:07 +00:00
1.9 KiB
1.9 KiB
Branch Scope: Issue #13 Title Privacy
Temporary planning document for branch codex/issue-13-title-privacy.
IMPORTANT: Delete this file before opening the PR. It is only for branch-local coordination and should not be merged.
Issue
GitHub issue #13 asks for an advanced privacy option that controls whether tab titles and media titles are sent to the KoalaSync relay server.
Goals
- Keep the existing behavior as the default for full backwards compatibility.
- Add a local-only extension setting for shared title privacy.
- Support three modes:
- Full titles: current behavior.
- Episode only: send only an extracted episode identifier such as
S01E04orEP004. - Hidden: clear shared tab and media titles before they leave the extension.
- Avoid server changes unless absolutely necessary.
- Preserve local title-based behavior where possible, including local episode detection.
Compatibility Notes
- Existing users should keep sending full titles unless they actively change the new setting.
- Existing servers already accept omitted,
null, or string title fields. - The protocol version should not need to change because this is a client-side reduction of optional payload fields.
- Older clients in the same room will keep behaving as before.
Implementation Notes
- Centralize outgoing title filtering in
extension/background.js. - Store the option in
chrome.storage.local, notchrome.storage.sync. - Use the existing episode extraction helper logic for episode-only mode.
- In hidden mode, actively send
nullfor title fields so stale titles are cleared server-side. - Episode lobby payloads must not leak full titles when privacy mode is hidden.
Verification
- Run the existing verification script.
- Add focused tests for title privacy helpers if the code shape allows it.
- Manually inspect the popup settings layout after adding the select control.