Site List Maintenance Status: Blue Pulse Running, Green Done
A frontend-only fix that shows the currently running WordPress site with a pulsing blue border and finished sites with solid green, no backend changes needed.
When maintenance runs across several WordPress sites in sequence, a text-only list makes it hard to tell which site is currently being processed and which ones are done. The team ruled out a blinking-red indicator early since it would cause fatigue over long runs, opting instead for a gentle blue pulsing border for the running site and a solid green border for completed ones, with prefers-reduced-motion support built in from the start.
Rather than adding a new backend endpoint, the team parsed the maintenance log stream already being sent to the frontend to infer which site was currently running, matching bracketed site names while filtering out log-level tags like INFO or ERROR. The initial design—marking the previous site as done whenever the running site changed—implicitly assumed logs always arrive in order; in production, interleaved log lines broke that assumption, and the logic was later rewritten to detect one specific marker line instead.
The 'done' state expires after 24 hours via localStorage, with layered defenses against bad JSON, wrong types, and stale entries, all wrapped in try/catch so a broken cache never blocks dashboard startup. That 24-hour window was later revisited in a follow-up effort that extended the retention period and reworked how entries get cleared.
The takeaways: check whether an existing data stream can be reused before building a new API, treat accessibility as non-negotiable whenever motion is added for attention, and ship a deliberately minimal first version so production usage surfaces the real edge cases in asynchronous state.