Timo
bd54e893b4
docs: Update root README for v1.2.0 features
v1.2.0
2026-04-25 16:50:09 +02:00
Timo
50c9ba4ec8
docs: Update website for v1.2.0 release and add Episode Auto-Sync feature card
2026-04-25 16:49:52 +02:00
Timo
55c2d4ed0d
feat: Auto-Sync Next Episode v1.2.0
...
Adds a new toggleable feature that detects episode transitions via
mediaTitle mutation (loadeddata/MutationObserver), pauses the video,
and waits for all room peers to load the same episode before
executing a coordinated Force Sync play at 0:00.
Protocol:
- Add EPISODE_LOBBY and EPISODE_READY events to shared/constants.js
- Add EPISODE_LOBBY_TIMEOUT (60s) constant
- Relay both new events in server/index.js
Content Script (content.js):
- Layered detection: loadeddata + MutationObserver src-change + heartbeat
- Debounced onEpisodeTransition() sends signal ONLY; no eager pause
- PAUSE_FOR_LOBBY handler pauses only after background confirms feature enabled
- startLobbyPoll() polls title match without premature pause for non-initiators
- checkAndReportLobbyReady() pauses and sends EPISODE_READY_LOCAL on match
- CONTENT_BOOT recovery for re-injection after hard navigation
Background (background.js):
- Episode lobby state persisted in chrome.storage.session with recovery
- EPISODE_CHANGED: checks setting, creates lobby, sends PAUSE_FOR_LOBBY to tab
- EPISODE_LOBBY/READY server event handlers with dedup logic
- 60s timeout cancels lobby (Option B) with Chrome failure notification
- Peer departure handled: removes from readyPeers, re-checks completion
- executeEpisodeLobby() reuses existing Force Sync pipeline at targetTime 0.0
- Lobby cleared on LEAVE_ROOM; status exposed in GET_STATUS
Popup:
- Auto-Sync Next Episode toggle in Settings tab (default: off, opt-in)
- Episode Lobby status card in Sync tab with peer readiness display
- LOBBY_UPDATE message handler for real-time UI updates
Bumps APP_VERSION and manifest to 1.2.0
2026-04-25 16:43:10 +02:00
Timo
02afc193c6
fix: extend input sanitization to relay path and remove whitespace artefact
v1.1.5
2026-04-25 16:17:16 +02:00
Timo
7fc156977a
feat: add graceful shutdown, input validation, and peer data factory (Phase 3)
2026-04-25 16:15:11 +02:00
Timo
99cb07bc2a
refactor: centralize room cleanup logic to fix DRY violation (H-1)
2026-04-25 16:12:51 +02:00
Timo
77ffda3e42
fix: address phase 1 audit findings (xss, cors, dead code)
2026-04-25 16:10:20 +02:00
Timo
01bc95e176
docs: add github link and version info to dev tab (v1.1.4)
v1.1.4
2026-04-25 03:49:42 +02:00
Timo
7417c21217
feat: enhance peer list with volume icons, play/pause status, and time interpolation (v1.1.3)
v1.1.3
2026-04-25 03:47:57 +02:00
Timo
3e63602559
docs(shared): add strict warning headers and README to prevent out-of-sync edits
v1.1.2
2026-04-23 22:01:35 +02:00
Timo
4785c9625c
chore(extension): bump version, fix targeted injection and race conditions
2026-04-23 21:58:19 +02:00
Timo
0d08711398
fix: restore CONNECT handler else branch, sync APP_VERSION, clean dead return-true
2026-04-23 20:09:30 +02:00
MacBook
abe876e04e
fix: remove legacy fallback for 100% strict tab targeting
2026-04-23 08:41:16 +02:00
MacBook
3771243b3c
fix: ensure routeToContent prioritizes saved target tab settings
2026-04-23 08:35:14 +02:00
MacBook
ee79d66ac0
fix: enforce strict tab targeting and update badge logic
2026-04-23 08:30:28 +02:00
MacBook
ac8d73ef4f
feat: add ARM64 support to Docker build
2026-04-23 07:16:10 +02:00
MacBook
f3ee7b47b9
chore: bump version to 1.1.1 and fix self-metadata sync and UI visibility
v1.1.1
2026-04-22 18:44:20 +02:00
MacBook
0f611fa112
chore: bump version to 1.1.0
v1.1.0
2026-04-22 18:31:28 +02:00
MacBook
67f872ffd2
feat(sync): implement end-to-end media title synchronization
2026-04-22 18:29:53 +02:00
MacBook
e40e2e5101
feat(dev): implement extended video metadata and data-attribute inspector
2026-04-22 18:22:59 +02:00
MacBook
0e7b57ce71
chore: bump version to 1.0.4
v1.0.4
2026-04-22 18:05:55 +02:00
MacBook
6065e0a278
fix(extension): guard currentTime against non-finite values and fix seek payload mismatch
2026-04-22 18:05:33 +02:00
MacBook
1dae8539f5
fix: integrate protocol sync into CI/CD and update documentation
v1.0.3
2026-04-22 17:01:00 +02:00
Koala
6a26731fa7
Delete scratch directory
2026-04-22 15:16:36 +02:00
Timo
e042fd92cd
chore: ignore scratch directory
2026-04-22 15:06:08 +02:00
Timo
90ae8e8f26
docs: update README with accurate structure and missing features
2026-04-22 15:05:32 +02:00
Timo
f43c1a8850
ci: final fix for ghcr lowercase using metadata-action
v1.0.2
2026-04-22 14:29:18 +02:00
Timo
8f01feeb56
ci: fix ghcr lowercase naming convention
2026-04-22 14:26:19 +02:00
Timo
8696533b1c
UI: Exclude local peer from activity acknowledgment list for better UX.
2026-04-22 14:11:28 +02:00
Timo
2aef9a1ffc
fix: v1.0.5 stability hotfixes (ACK security and event jitter)
2026-04-22 13:55:57 +02:00
Timo
33e48a8278
fix: resolve syntax error in background.js (unexpected token ')' at end of handleAsyncMessage)
2026-04-22 13:48:11 +02:00
Timo
bcb3acb78e
fix: resolve critical sync feedback loop and notification argument order
2026-04-22 13:41:05 +02:00
Timo
e65c326c32
fix: resolve metadata desync in heartbeats and restore remote control icons
2026-04-22 13:33:33 +02:00
Timo
622db23f38
style: restore classic remote control UI and sync architectural fixes
2026-04-22 13:32:10 +02:00
Timo
0509b993e5
feat: implement one-click auto-join and self-closing bridge with countdown
2026-04-22 12:29:09 +02:00
Timo
901b97dcaf
fix: implement timestamp correlation for visual ACKs
2026-04-22 12:23:17 +02:00
Timo
221961820a
feat: implement visual confirmation system and redesigned Sync tab
2026-04-22 12:20:32 +02:00
Timo
3317994354
fix: ensure popup remote control affects local video too
2026-04-22 12:14:53 +02:00
Timo
1910b09bce
fix: ensure username and tab title are sent and stored on initial join
2026-04-22 12:13:33 +02:00
Timo
9f004557ed
fix: resolve peer isolation and invitation link sync issues
2026-04-22 12:10:26 +02:00
Timo
465a34837d
fix: only show 'ON' badge when connected to a room with a target tab
2026-04-22 12:01:27 +02:00
Timo
8d28691030
docs: restore detailed AI_INIT.md with v1.0.0-RC5 updates
2026-04-22 11:56:38 +02:00
Timo
1d2237aab6
docs: complete repository documentation update for v1.0.0-RC5 features
2026-04-22 11:54:54 +02:00
Timo
830f8c44b1
fix: implement background heartbeats and aggressive server-side peer pruning
2026-04-22 11:51:29 +02:00
Timo
61d8dfc9eb
ui: refine peer list name/id display style
2026-04-22 11:46:36 +02:00
Timo
6afae29252
fix: include username in settings fetch to ensure it is sent to server
2026-04-22 11:46:07 +02:00
Timo
acd18b4d7b
ui: move connection status to the top of the dev tab
2026-04-22 11:41:02 +02:00
Timo
3e3fa75f25
docs: clarify noise filtering behavior in settings
2026-04-22 11:40:00 +02:00
Timo
5ccdd273cf
fix: clear peer list immediately when leaving a room
2026-04-22 11:39:27 +02:00
Timo
a847719b24
Update blacklist with comprehensive browser and idle game list
2026-04-22 11:34:15 +02:00