343724df0f
The instant-paint work renders a group thread from cache BEFORE /api/groups/members (convoMembers) loads, so senderAvatar had no avatar and drew initials only; the later network render diffs/skips the unchanged messages, so the photos never came back until a full reload. Platform-agnostic (desktop + iOS), group-only — matching the report. Fix: senderAvatar now falls back to the global CONTACTS avatar so the cache paint is already correct, and openConvo repaints the sender avatars (refreshSenderAvatars) once convoMembers loads. Web-only; live on next app launch. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>