Commit Graph

2 Commits

Author SHA1 Message Date
sinohqb
0c1e4578c9 refactor(frontend): unify polling via usePolling + visibility pause (S6)
All checks were successful
CI / test (push) Successful in 3m57s
- usePolling gains a pauseWhenHidden option (default true): the timer
  pauses while the document is hidden (background tab / minimised) and
  resumes with an immediate reload on returning to visible. Callers keep
  owning their initial fetch, so no duplicate first request.
- CronPoolMonitor now delegates its 5s poll to the shared usePolling hook
  (initial load stays in its own useEffect); removes the bespoke
  setInterval + manual visibility gap.
- CronPoolMonitor.test: visibility guard now passes (3/3), removing the
  previous it.fails. Frontend suite: 18/18; tsc clean; backend 878.

Resolves scan §6.3.
2026-08-14 15:57:07 +08:00
sinohqb
244feae505 feat(intelligent-eval): add cron pool monitoring UI (ticket 10)
- Add openclawCronPoolApi with all cron pool API calls
- Add CronPoolMonitor page with pool status, metrics, and alerts
- Implement real-time refresh (5 second polling)
- Implement manual scaling with target size input
- Add alert history table with resolve functionality
- Add route /cron-pool for cron pool monitoring page
- Pass TypeScript type checking

All 853 tests passing.
2026-08-12 11:05:51 +08:00