PASS duplicate CRNs removed and seconds normalized
PASS invalid CRNs/time rejected
PASS today target uses local timezone
PASS past time resolves to tomorrow explicitly
PASS arm persists run and settings
PASS popup reopening retains run
PASS settings cannot silently alter an active run
PASS cannot refresh early
PASS refresh claim is single-use
PASS new document resumes waiting, not another timer
PASS other OBS tab cannot inherit run
PASS save claim is single-use
PASS post-save navigation resumes confirmation only
PASS confirmation claim is single-use
PASS reports click, not guaranteed course acceptance
PASS stop blocks delayed submission
PASS non-OBS tab rejected
PASS old userscript coexistence blocks arming
PASS timeout becomes terminal, no daily repeat
PASS closing bound tab cancels run
20 coordinator/helper checks passed.
