Skip to content

[Task] Scalable Data Sync in browser #2219

@weboko

Description

@weboko

Description

Implement the e2e reliability protocol SDS in js-waku.

Current implementations of js-waku lack a robust and scalable mechanism for ensuring e2e reliability of usage of Store protocol. This limitation is problematic for development of dapps.

User Story

User stories that would be achieved by using SDS protocol:

  • As a user, I want group messages to be delivered in the same order for all participants, so that my group chat conversations remain consistent.
  • As a developer, I want a mechanism to recover lost messages from Store nodes, so that no critical information is missed in case of network interruptions.
  • As a user, I want my messages to be acknowledged and synced in real-time, so that I can trust that other participants have received them.
  • As a developer, I want to periodically resend unacknowledged messages, so that reliability is ensured even in unreliable network conditions.
  • As a developer, I want to integrate bloom filters for tracking received message IDs, so that I can efficiently handle large groups without performance bottlenecks.

Proposed Solution / Feature Design

Preliminary task breakdown
  • implement SDS core protocol;
  • implement SDS sdk - questionable;
  • expose reasonable options to createLightNode - questionable;

Optional: Diagram or Draft of Design

TBD

Notes

Sub-issues

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions