As a Roblox developer, it is currently impossible to determine whether a player leaves an experience by choice (via the in-app menu, terminated the app with hotkeys, etc.) or if they experience an error which causes them to disconnect (power loss, network error, app crash).
Seems as simple as sending a handshake to the server if the client leaves safely, and not being able to send one if the client errors. The exact details as to why they left aren’t important, just whether or not it was their choice. Although, it may help some developers to know if the player is leaving because they are teleporting.
If Roblox is able to address this issue, it would improve my development experience because systems such as combat log detectors cannot differentiate between players who try to cheat versus those who genuinely leave the game unexpectedly, and so there is little room for forgiveness.
It’s not beyond the realm of possibility for players to temporarily cut off their wi-fi connection to fake a network error, but it’s certainly more trouble than it’s worth for the majority of players, and the developer can implement checks to see if a player is disconnecting too often or strategically.