[Phase 4] Implement the projection coordinator, freshness states, and refresh scheduler #28

Closed
opened 2026-07-25 21:56:09 +00:00 by lost-rob0t · 0 comments
lost-rob0t commented 2026-07-25 21:56:09 +00:00 (Migrated from github.com)

Parent: #2
Depends on: #22, #23, #24, #25, #27

Scope

  • Resolve panel and view definitions into typed local or remote projection requests.
  • Deduplicate requests by identity, parameters, graph revision, and integration scope.
  • Cancel obsolete work and guard against stale results.
  • Centralize visibility-aware refresh, backoff, jitter, pause-on-hidden, and recovery scheduling.
  • Normalize live, partial, cached, mixed, stale, empty, disabled, error, and offline states with timestamps and source revisions.

Acceptance criteria

  • Panels never create independent polling intervals.
  • Hidden and background views receive lower hydration priority.
  • A failed request cannot be shown as an empty successful result.
  • Older responses cannot overwrite newer projections.
  • Tests cover deduplication, cancellation, backoff, visibility changes, and stale fallback.
Parent: #2 Depends on: #22, #23, #24, #25, #27 ## Scope - Resolve panel and view definitions into typed local or remote projection requests. - Deduplicate requests by identity, parameters, graph revision, and integration scope. - Cancel obsolete work and guard against stale results. - Centralize visibility-aware refresh, backoff, jitter, pause-on-hidden, and recovery scheduling. - Normalize live, partial, cached, mixed, stale, empty, disabled, error, and offline states with timestamps and source revisions. ## Acceptance criteria - Panels never create independent polling intervals. - Hidden and background views receive lower hydration priority. - A failed request cannot be shown as an empty successful result. - Older responses cannot overwrite newer projections. - Tests cover deduplication, cancellation, backoff, visibility changes, and stale fallback.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/quasar-ui#28
No description provided.