Skip to content
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

[Tech] Implement poll history cache (MSC4013) in the rust SDK #2183

Open
1 of 2 tasks
alfogrillo opened this issue Nov 9, 2023 · 1 comment
Open
1 of 2 tasks

[Tech] Implement poll history cache (MSC4013) in the rust SDK #2183

alfogrillo opened this issue Nov 9, 2023 · 1 comment

Comments

@alfogrillo
Copy link

alfogrillo commented Nov 9, 2023

Description

MSC4013 TL;DR;

  1. Each room has a new state event m.room.poll_history
    • Ideally this event is sent when the room is created together with other initial state events (example of initial state event: m.room.encryption)
  2. Every time a client starts a poll it references the m.room.poll_history state event using m.relates_to.
  3. (out of scope for now) In the poll history we can call the relations API to fetch quickly all the events related with m.room.poll_history (which are the m.poll.start events). Only polls created with this approach will be visible in the history (polls already in the timeline won't be visible).

Size

M?

Dependencies

  • None

Acceptance criteria

  • Each new created room will has a m.room.poll_history state event
  • Each new m.poll.start (including edits) event has a reference to the new m.room.poll_history state event

Out of scope

  • Using the MSC for building the poll history (for now we keep the old "backward pagination" approach)

Open questions

  • How can we publish the new m.room.poll_history state event in already existing rooms? Can HS admins publish it in the rooms with a script?
  • Will this change prevent polls hosting threads (see comment)

Subtasks

Android

No tasks being tracked yet.

iOS

No tasks being tracked yet.

Other

No tasks being tracked yet.
@jonnyandrew
Copy link

Blocked waiting on a resolution for matrix-org/matrix-spec-proposals#4013 (comment), as after this change it would not be possible to:

  • start a thread on a poll
  • start a poll within a thread

See internal disccusion

@VolkerJunginger, @langleyd

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants