fix(contests): show skeletons only until feature flag resolves#14314
fix(contests): show skeletons only until feature flag resolves#14314dylanjeffers wants to merge 1 commit into
Conversation
The contests page disabled its remix-contests query while `useFeatureFlag(CONTESTS).isEnabled` was still `undefined`. Disabled queries report `isPending: true`, so skeletons stayed on screen for the full ~14s Optimizely cold-load. Start the query optimistically before the flag resolves; the existing `<Navigate to='/' />` still handles the flag-off case once it loads. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
|
Closing as obsolete: main dropped the CONTESTS feature flag in #14317, so there is no flag-resolution gating left for skeletons to wait on. The skeletons-on-load behavior collapses to the simple 'show until |
Summary
useAllRemixContestsquery whileuseFeatureFlag(CONTESTS).isEnabledwas stillundefinedduring Optimizely's ~14s cold-load. Disabled queries reportisPending: true, so the skeleton state stayed on screen indefinitely on first paint.enabledon!isFlagLoaded || isContestsPageEnabled. The existing<Navigate to='/' />continues to redirect once the flag loads asfalse, so users without access still can't see contest data.Test plan
/contestswith Optimizely throttled — verify contest cards render as soon as the API responds rather than waiting on the flag.CONTESTSflag off — verify the page still redirects to/after the flag resolves.🤖 Generated with Claude Code