Task Summary
Each workflow card fetches its cover via a separate GET /{wid}/cover (a DB hit plus an access check), so a dashboard or hub page of N cards issues N requests, which scales poorly on a busy dashboard. Fold a hasCover flag (or the cover itself) into the existing workflow-list/search payload so cards render directly or gate a lazy fetch, instead of fetching unconditionally on init. Follow-up from PR #5704; the per-card stale-cover flash and out-of-order resolution were already fixed there via switchMap plus eager reset. Relevant code: WorkflowCoverService.getCover and card-item.component.ts (frontend), WorkflowResource.getCoverImage (backend).
Task Type
Task Summary
Each workflow card fetches its cover via a separate
GET /{wid}/cover(a DB hit plus an access check), so a dashboard or hub page of N cards issues N requests, which scales poorly on a busy dashboard. Fold ahasCoverflag (or the cover itself) into the existing workflow-list/search payload so cards render directly or gate a lazy fetch, instead of fetching unconditionally on init. Follow-up from PR #5704; the per-card stale-cover flash and out-of-order resolution were already fixed there viaswitchMapplus eager reset. Relevant code:WorkflowCoverService.getCoverandcard-item.component.ts(frontend),WorkflowResource.getCoverImage(backend).Task Type