* Studio: mascot images degrade gracefully instead of showing alt text Mascots loaded from raw public-folder URLs with no error handling, so a missing or unreachable file (version skew during updates, subpath mounts, transient blips) painted the alt text, like the empty mascot on the training start overlay. A shared MascotImg now resolves against BASE_URL, retries once with a cache-buster, then swaps to a 4 KB fallback sloth bundled as a data URI that cannot 404. Applied to the chat greeting, 404 page, training start overlay, auth form, onboarding splash and wizard. * Reset mascot retry state via key remount instead of render-time tracking * Use MascotImg for the artifact generating panel sloth |
||
|---|---|---|
| .. | ||
| mascot-fallback.webp | ||
| react.svg | ||