-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Timeline should follow /sync result order, not origin_server_ts #22
Comments
For the record: I'm also experimenting with
|
The current way of storing messages has one more flaw: in fact, |
Upon further thinking on this: rather than keep the raw events "timeline" (which has no chance of usage in the UI) in |
Erm, using a template class doesn't quite work for Tensor that uses a bare
The option with an Event proxy looks much more flexible and less burdening both for a thinner client (such as Tensor) and a thicker client (such as Quaternion). |
An |
The original problem is closed by #30; the template storage for a timeline is a separate and less urgent topic. |
Upon yesterday's discussion in #quaternion and #matrix-dev, the current way of forming the timeline in Quaternion turned out to be utterly wrong: origin_server_ts should not be used to order a timeline (counter-example: one homeserver with skewed clock, and you see mess in the timeline, no matter which homeserver you're looking at it through).
As there's no "correct" full order (DAG is partially ordered by definition), the best option is to follow the order in which /sync and /messages provide results. A corollary of this is that we cannot notify clients about each newMessage separately; and moreover, notifying about an arrived block of messages should include information about ordering of these message inside the timeline. The interface and rationale for that is actually a big question in itself.
The text was updated successfully, but these errors were encountered: