You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Enhance the scheduled test system to be "idle-aware" — never run bandwidth-intensive tests while the user is actively working, on a video call, or gaming.
Current state
Scheduled tests use chrome.alarms with fixed intervals (configurable in options). Tests fire regardless of user activity.
Proposed improvement
Use chrome.idle.queryState() before running scheduled tests
Only run full bandwidth tests when state is 'idle' (user hasn't interacted for 60+ seconds)
If user is 'active', defer the test and retry after 5 minutes
If user is 'locked', still run the test (screen locked = not actively using bandwidth)
Why
Prevents scheduled tests from disrupting active Zoom calls, gaming sessions, or large downloads
Makes background monitoring truly invisible and non-intrusive
Addresses the Dev/v2025.2.0 #1 complaint about continuous monitoring tools: "It slows down my browser"
Implementation
Add chrome.idle permission to manifest
Wrap runFullTest() call in alarm listener with idle check
Add configurable idle threshold in options (default: 60 seconds)
Summary
Enhance the scheduled test system to be "idle-aware" — never run bandwidth-intensive tests while the user is actively working, on a video call, or gaming.
Current state
Scheduled tests use
chrome.alarmswith fixed intervals (configurable in options). Tests fire regardless of user activity.Proposed improvement
chrome.idle.queryState()before running scheduled tests'idle'(user hasn't interacted for 60+ seconds)'active', defer the test and retry after 5 minutes'locked', still run the test (screen locked = not actively using bandwidth)Why
Implementation
chrome.idlepermission to manifestrunFullTest()call in alarm listener with idle check