Skip to content

Migrate extension to Manifest V3#546

Open
showchi wants to merge 10 commits into
schmich:masterfrom
showchi:mv3-pr-fixes
Open

Migrate extension to Manifest V3#546
showchi wants to merge 10 commits into
schmich:masterfrom
showchi:mv3-pr-fixes

Conversation

@showchi
Copy link
Copy Markdown

@showchi showchi commented May 27, 2026

Summary

Migrates the extension background runtime to Manifest V3 and fixes follow-up issues needed for MV3 behavior.

This includes:

  • Move extension background execution to an MV3 service worker
  • Add offscreen audio playback support
  • Stabilize runtime service messaging across extension contexts
  • Use stable context menu item IDs required by MV3
  • Preserve unrelated extension storage keys during settings upgrades
  • Fix timer restore/alarm edge cases introduced by service worker lifecycle changes

Fixes

  • Fix paused focus timers reporting the wrong next phase before a long break
  • Fix countdown getting stuck at <1min after device sleep/lid close by expiring when the scheduled Chrome alarm fires
  • Fix settings upgrade behavior so timer state and other unrelated local storage keys are not cleared
  • Fix context menu creation to avoid unstable generated IDs
  • Fix runtime messaging errors when no receiver exists
  • Fix offscreen audio playback build/runtime separation

Verification

  • npm run test:unit
    • 33 passing
  • npm run build
    • build completed successfully
    • existing webpack bundle size warnings remain

@showchi showchi marked this pull request as ready for review May 28, 2026 08:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant