[API] Message `sendTime` timestamps are generated locally, instead of determined server-side
Describe the bug?
This is something I encountered (or was revealed by) ReCon; when someone is messaging me while their computer clock was a few messages behind, the messages appeared "earlier" in the timeline, with a different timestamp.
Considering this is a third-party app, this isn't strictly about resonite, but its still worth pointing out, as depending on how resonite will arrange/has arranged its messaging code, this could lead to further bugs, or possible message forgery and other shenanigans, such as eternally-stuck messages on the bottom of the screen with timestamps in the far future.
To Reproduce
- Have person A (on a computer) set the time back a few minutes.
- Have person B (on ReCon, or possibly another computer with resonite) start chatting.
- Have person A message/chat back.
- Observe timeline / timestamp discrepancy.
Reproduction Item/World
N/A
Expected behavior
For the messages to order nicely by arrival to the server, and not be able to arrive "earlier" while responding to or already having seen a "later" message; that breaks the laws of causality :p
Screenshots
No response
Resonite Version Number
2025.8.20.1298
What Platforms does this occur on?
Windows
What headset if any do you use?
N/A
Log Files
N/A
Additional Context
I know this is primarily about a third-party app, but this feels like code smell on resonite's side, and thats why i'm reporting it.
Reporters
@jo.wtf, using @Nutcake's (same discord username) app.
Hi! Thank you for reporting this bug on the Resonite issue tracker.
We noticed you haven't attached a proper log file in your report. Including a log helps us pinpoint the exact issue which is why it is required during the report process.
If you do not know where to find log files, please see this tutorial on the Resonite Wiki to see where to find them.
Thank you!
(Log file not required)
I should mention that the other person was on Linux, Arch Linux specifically
@nutcake figured out that sendTime is generated locally, but lastUpdateTime is used by Resonite to order the messages, which ReCon will also be using.
Updated the title to clarify this.
I still believe this is a bug worth fixing, because if resonite wants to add editing features into its messaging into the future, then lastUpdateTime would get updated (or supposedly so), and bump the edited message forwards, or the likes.