- Ya
- 21 Agosti 2026, 02:01 UTC
- Mwandishi
- Kamo
- Ahadi ya
- 537bd60
The Chats → Support list is about to show the requestor's face, and a support requestor is — on the platform's own desk — always somebody else's member. Every other avatar in that feed is backfilled on the client from the VIEWER'S org directory, which has never heard of them, so this one has to be resolved server-side by MediaService. That means a second service naming an avatar object, and the object path is exactly the thing that must not exist twice: it used to be prefixed with whatever host the request arrived on, so a photo uploaded on one org's domain 404'd when read from another, degrading to initials and looking like "no photo" rather than like a bug. So AvatarObjectPaths moves here and SecurityService's copy becomes a delegating alias holding no strings of its own. MemberAvatarUrls adds the rest of the resolution: member-override before user default, photo vs Avatar Creator decided by the DISCRIMINATOR before instanceof — a lazily loaded avatar is a proxy of the base type, so instanceof would send every uploaded photo to the vector path — and host → theme domain. A host that is not a domain yields no URL rather than a guess: no image degrades to initials, a broken one does not. Also adds REQUESTOR_ID to the two support chat-feed projections.