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

Sync / Device being Synced with doest see the progress #550

Closed
ximenabb opened this issue Jul 26, 2024 · 9 comments · Fixed by #619
Closed

Sync / Device being Synced with doest see the progress #550

ximenabb opened this issue Jul 26, 2024 · 9 comments · Fixed by #619
Assignees
Labels
bug Something isn't working MVP Needs to be completed for the initial QA release sync

Comments

@ximenabb
Copy link
Contributor

Describe the bug

  • Device A clicks on Sync and is syncing with Device B.
  • Device A sees the syncing progress.
  • Does Device B doesnt see any changes and the sync screen remains the same saying “1 device waiting to sync with you”

User goal
Device B (and any other connected device syncing) should see the same syncing state. The progress bars would progress depending on how much data they are getting/sending.

Details : https://www.notion.so/digidem/Sync-Device-being-sync-to-doesnt-see-progress-bar-bbe2a09b10804b98b34ef8f170ad6f24

@ximenabb ximenabb added bug Something isn't working sync MVP Needs to be completed for the initial QA release labels Jul 26, 2024
@achou11
Copy link
Member

achou11 commented Jul 30, 2024

This seems like expected behavior based on the design here, unless this is outdated:

https://www.figma.com/design/uzynHXR0xgJu19lsCoJyXN/%F0%9F%90%9A-Shell-App?node-id=1068-4024&t=C2stSJj2AxvpGgLt-0

@achou11
Copy link
Member

achou11 commented Jul 30, 2024

Device B (and any other connected device syncing) should see the same syncing state.

My understanding is that this shouldn't be the case, unless Device B (or any other device) have explicitly opted into syncing at some prior point i.e. pressed that button on the sync screen

There's a lingering issue where we don't persist the sync opt-in after leaving that screen, so you have to press that button again in the case of leaving screen and coming back to it. but i think that's outside the scope of the issue described here

@gmaclennan
Copy link
Member

Device A sees the syncing progress.

@ximenabb can you describe what progress Device A sees? Does the progress on device A advance and/or complete? Or does it show a % completion and stay at that point?

@achou11
Copy link
Member

achou11 commented Jul 30, 2024

@ximenabb can you describe what progress Device A sees? Does the progress on device A advance and/or complete? Or does it show a % completion and stay at that point?

@gmaclennan this is my best understanding of what's being described, if helpful. (note that the syncing in the end is too fast so the progress isn't really elegantly displayed, but it worked).

sync.mp4

to me, this is expected behavior based on the design that the implementation was working with. maybe could do with some UX adjustments to be clearer about what's happening

@gmaclennan
Copy link
Member

Thanks, that is very helpful. It seems like the text on the device that starts to sync first is incorrect: it says "syncing with 1 device" before that device has started sync. It's not syncing with that device until that device also starts to sync. Do we have the necessary data from the core API to show this?

@achou11
Copy link
Member

achou11 commented Jul 31, 2024

Thanks, that is very helpful. It seems like the text on the device that starts to sync first is incorrect: it says "syncing with 1 device" before that device has started sync. It's not syncing with that device until that device also starts to sync. Do we have the necessary data from the core API to show this?

I don't think so? seems like it would require exposing another field in the sync state that relates to the number of connected peers that are opted into syncing

@achou11
Copy link
Member

achou11 commented Jul 31, 2024

The alternative approach is to update the UI such that it's only communicating that you've enabled syncing, instead of specifics in relation to other peers.

For example, in that "idle" state (or when sync progress = 0?) the copy could say something like "Waiting to sync" and the progress bar can (optionally) be in some indeterminate state. once actual data is being synced, switch the copy to something similar to what's currently being shown

@gmaclennan
Copy link
Member

I think it's an important feature to add to mapeo core at some stage. I've created an issue for this: digidem/comapeo-core#738.

I am not sure how much of a priority this is to address for MVP?

in that "idle" state (or when sync progress = 0?) the copy could say something like "Waiting to sync" and the progress bar can (optionally) be in some indeterminate state. once actual data is being synced, switch the copy to something similar to what's currently being shown

I think that might work as an interim solution that is easier to implement.

I realize that the designs do not include states for when a device has started syncing, but other connected devices have not started syncing. The designs only include the state for the opposite: when other connected devices have started syncing, but the current device is not syncing.

I think it is valuable for users to see why sync is not progressing, e.g. "0 / 6 devices syncing". This could all benefit from some design and copy refinements down the road.

@achou11 achou11 self-assigned this Aug 15, 2024
@achou11
Copy link
Member

achou11 commented Aug 15, 2024

This will be fixed when #602, #603, #604, and #605 are addressed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working MVP Needs to be completed for the initial QA release sync
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants