
Key takeaways
- Manifest V3 service workers are short-lived, so state must be persisted
- Track the active tab's domain, not the page content
- Query strings are stripped by default to avoid leaking sensitive data
- Batched uploads keep the extension light
Living with MV3
Manifest V3 replaced persistent background pages with service workers that the browser can stop at any time. An extension cannot keep tracking state in memory. It has to save what it needs to storage and rebuild from it when it wakes.
What to track, and what to skip
For productivity insight the domain is enough. The extension records which site was active and for how long. It does not read page content, form fields or the full address, and query strings are removed by default because they often carry tokens and personal details.
Reporting back
Events are aggregated into intervals and sent in batches to the API, which attaches them to browser sessions alongside the desktop agent's data. The extension runs in Chrome and Edge.