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

User-local snapshots #2595

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from
Draft

User-local snapshots #2595

wants to merge 2 commits into from

Conversation

corrideat
Copy link
Member

This PR has the goal of speeding up login by:

  1. Implementing a fast-path login, which doesn't require syncing all contracts before the state is persisted locally. This could allow for the login process to be interruptible.
  2. Implementing an even faster path by saving the local state remotely on the sever (e.g., using the KV store), and restoring it when logging in, if possible. This would allow for an even faster login experience on new devices.

@corrideat corrideat requested a review from taoeffect February 9, 2025 15:47
@corrideat corrideat marked this pull request as draft February 9, 2025 15:47
@corrideat corrideat self-assigned this Feb 9, 2025
@taoeffect
Copy link
Member

taoeffect commented Feb 9, 2025

Also, could this PR add support for sync progress? It would be great if we could display a progress bar along with a timer so that the user knows about how long it'll take for the sync to finish.

E.g. even though we don't know exactly the size of the full sync in advance, we do know how quickly we are syncing each message, and since on average most messages will have an average size, and since we know how many messages there are left to sync, we can estimate a completion time.

EDIT: here's an example of a progress bar that combines the progress of all currently syncing contracts. It shows which message we're on for one of the contracts (e.g. the identity.js contract), as well as which contract we're on:

a

@corrideat corrideat force-pushed the user-local-snapshots branch 2 times, most recently from 8b2e7a5 to b09fa62 Compare February 17, 2025 00:51
Copy link

cypress bot commented Feb 17, 2025

group-income    Run #4069

Run Properties:  status check passed Passed #4069  •  git commit dc2ba300ea ℹ️: Merge 1ccd8d7442fb5b345d606d2e959c062bf86cab44 into f7451f688d49f29acab476d0a2c2...
Project group-income
Branch Review user-local-snapshots
Run status status check passed Passed #4069
Run duration 13m 14s
Commit git commit dc2ba300ea ℹ️: Merge 1ccd8d7442fb5b345d606d2e959c062bf86cab44 into f7451f688d49f29acab476d0a2c2...
Committer Ricardo Iván Vieitez Parra
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 10
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 114
View all changes introduced in this branch ↗︎

@corrideat corrideat force-pushed the user-local-snapshots branch from b09fa62 to dc33a1c Compare February 20, 2025 01:09
@corrideat corrideat force-pushed the user-local-snapshots branch from dc33a1c to 93eafd5 Compare February 22, 2025 19:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants