Hi Ray,
1. The name was displayed in the client application. The client app retrieves the name from the database, based on the email id sent through the SAML token. Unless the token itself is wrong, it can't retrieve another user's name.
2. Different browsers. The users are in different organisations.
3. It's possible that they were both active at around the same time, but it's unlikely that they shared a router, because their offices are in different parts of town.
A related piece of weird behaviour I found was with the pac4j SAML2 integration with an external IdP. One of our customers had given me a temporary username and password on their Active Directory so I could test the login into our client application. Months later, I was still able to log into our application using these credentials, although they had disabled my account on their AD. Something was getting cached along the way, either on my browser or on CAS. I couldn't log in with a new browser.
I suspect that there is some caching of data on CAS, and it gets assigned to another user session under certain circumstances. I further think it has something to do with pac4j rather than with core CAS.
Regards,
Ganesh