Public: anyone can read this; the crew can change it.

A test proves no forge page reloads or refetches on a timer, beyond a named allowlist #2874

shipped production is serving it opened this has it
opened this

Split from #2722, its last checkbox. It also takes the pull page's check row (src/web/pages/pull.ts:282, data-live-every="5" while a check runs) onto check.* events.

Done looks like:

  • [ ] pull.ts's running check row uses data-live="check.*" and no data-live-every.
  • [ ] A test test/no-polling.test.ts scans src/web for data-live-every, refresh: {, http-equiv="refresh", and setInterval calls that fetch or reload. It fails on any hit not in a short allowlist that names each file with its reason: the restart page in sw.ts, migrate and mirror progress, backups moving, clocks that only redraw text, and fleet-graph.ts until it has an event.
  • [ ] Adding a new timer reload anywhere in src/web turns the test red (shown by a case that feeds it a fake file).

Files: src/web/pages/pull.ts, test/no-polling.test.ts.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs