- Shipped
- September 11, 2026 at 4:23 AM UTC
- Author
- Kamo
- Commit
- 8505fca
The desk's roster now carries, for every client, their own photo (users.avatar_id, built on the operator's live theme host — the only one their console loads images from), when they last signed in anywhere on the platform (users.last_login, parsed once and sent in the shape of lastActivityAt), and whether any of their member rows holds a live socket. The participants strip gets each KamoCRM executive's photo from their KamoCRM member profile (member avatar, else the person's), built for the viewer's console; and the frame that raises a desk window carries the client's photo beside their name. All of it lives in one small Exec2ExecFaces component: loaded by id rather than off the lazy JOINED association (whose proxy has no photo path), one avatar read and one presence sweep per page, and every failure degrades to initials / offline rather than failing the roster.