Skip to content

Issue from element-x-ios: Timeline can get stuck showing only the most recent message if there's a reset which races with a local echo #6709

Description

@Hywan

Originally written by @ara4n at https://github.com/element-hq/element-x-ios/issues/5817


Steps to reproduce

  1. Send messages at the same time that the timeline is coincidentally getting reset by SSS for whatever reason
  2. It then only shows the most recent message (and the date separator)

Here seen on macOS on build 1255 but the same applies on iOS:

Image

There's no loading spinner (although overscrolling the screen kicks it into attempting a backpagination, which fixes it).

Outcome

What did you expect?

The timeline should never get stuck showing partial history.

What happened instead?

So, I stumbled across this while smoketesting the Tachyon DMLS work a few weeks ago via Claude: I fixed it on my experimental branch but haven't had a chance to try to upstream it. So before I forget it again, three possible related issues were thrown up. I don't the code well enough to unpick which of them (maybe all?) fix this failure mode - you can find them at https://gist.github.com/ara4n/d9462cca5c758c5b8f6a9536a1278c85.

@Hywan i'm hoping something useful can be salvaged from the claude output here if it'd be possible to take a look. I get the local-echo-race bug once every few days.

I can also provide logs if needed.

Application version

1255

Will you send logs?

No

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions