fix: auth scheduler env vars, concurrency and browser stability

This commit is contained in:
Giancarmine Salucci
2025-12-21 02:15:22 +01:00
parent 9357bd483a
commit 342a8eb259
9 changed files with 420 additions and 79 deletions

View File

@@ -0,0 +1,21 @@
# Outcome - Fix Scheduler Concurrency and Browser Stability
## Summary
Successfully implemented fixes for the scheduler concurrency issues and browser instability.
## Changes
- **Scheduler Configuration Validation:**
- Updated `src/lib/server/scheduler.ts` to validate `intervalMinutes`.
- Added a check for `NaN` and a minimum interval of 15 minutes.
- Defaults to 720 minutes if the configuration is invalid.
- **Resource Cleanup:**
- Refactored `renewInstagramAuth` in `src/lib/server/scheduler.ts` to use a `finally` block for closing `page` and `context`.
- Ensures resources are released even if an error occurs during renewal.
- **Robust Browser Management:**
- Updated `src/lib/server/browser.ts` to check `browser.isConnected()`.
- Automatically re-initializes the browser if it is disconnected or crashed.
## Verification
- The scheduler will now default to a safe interval if misconfigured, preventing console spam.
- Browser crashes will be automatically recovered from on the next scheduler run.
- Resource leaks from failed renewal attempts are prevented.