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

Robot update: Upgrade/downgrade modal #2401

Closed
60 tasks done
mcous opened this issue Oct 2, 2018 · 2 comments · Fixed by #2807
Closed
60 tasks done

Robot update: Upgrade/downgrade modal #2401

mcous opened this issue Oct 2, 2018 · 2 comments · Fixed by #2807
Assignees
Labels
app Affects the `app` project feature Ticket is a feature request / PR introduces a feature medium

Comments

@mcous
Copy link
Contributor

mcous commented Oct 2, 2018

As a user, I want to be able to update my robot so I can ensure I have the latest features and fixes.

When updating a robot, for technical reasons, it's important to know if:

• The app and robot versions are not in sync (for stability)
• The app is out of date (because the app update contains the robot update)

Our update flow is confusing and unintuitive in order to support offline robots, so we should improve our UI to lessen the confusion

Acceptance Criteria

  • Display appropriate robot update modal copy and ctas depending on below matrix
  • Display appropriate app update modal copy and ctas depending on below matrix
  • View App Update Button
  • View Robot Server Update Button
  • Not Now Button
  • Downgrade link
app < latest app = latest app ? latest
robot < app Fig. 1 Fig. 4 Fig. 4
robot = app Fig. 2 Fig. 5 Fig. 5
robot > app Fig. 3 Fig. 6 Fig. 6

Testing Plan

figure 1 (robot < app, app < latest)


robot = 3.5.1 | app = 3.6.0| latest = 3.6.2
https://zpl.io/beLo0YD

  • 
always show UpdateAppModal first when there is appUpdate.available,regardless of upgrade downgrade/reinstall action
  • 
VersionList shows:
    • 
current app version
    • current robot version
  • 


redirect to menu/app/update on load
  • available app update version
  • [view app update] links to menu/app/update
  • [click here] shows available upgrade release notes (for robot, not app)
  • [not now] closes modal, sets current available wheel version to ignored

figure 2 (robot = app, app < latest)

robot = 3.6.0 | app = 3.6.0 | latest =3.6.2
https://zpl.io/blZd0Pk

  • redirect to menu/app/update on load
  • always show UpdateAppModal first when there is appUpdate.available, regardless of upgrade downgrade/reinstall action
  • VersionList shows:
    • current app version
    • current robot version
    • available app update version
  • [click here] installs current available wheel (spinner modal screen)
  • [view app update] links to menu/app/update
  • [not now] closes modal, does not ignore this api version

figure 3 (robot > app, app < latest)


robot = 3.6.1 | app = 3.6.0| latest = 3.6.2
https://zpl.io/bz1AoWX

  • redirect to menu/app/update on load
  • always show UpdateAppModal first when there is appUpdate.available, regardless of upgrade downgrade/reinstall action
  • VersionList shows:
    • current app version
    • current robot version
    • available app update version
  • [click here] installs current available wheel (spinner modal screen)
  • [view app update] links to menu/app/update
  • [not now] closes modal, does not ignore this api version

figure 4 (robot < app, app = latest)

robot = 3.6.0 | app = 3.6.2 | latest = 3.6.2

https://zpl.io/amy5nBA

  • Upgrade auto-pop up (as long as this version is not previously ignored)
  • Robot InformationCard button reads [Upgrade]
  • SyncRobotModal shows upgrade message
  • VersionList shows:
    • current app version
    • current robot version
  • [not now] closes modal and ignores available upgrade version
  • [view robot server update] shows release notes
  • [update robot server] installs robot server upgrade

figure 5 (robot = app, app = latest)

robot = 3.6.2 | app = 3.6.2 | latest = 3.6.2

  • Robot InformationCard button reads [Reinstall]
  • ReinstallModal renders shows reinstall message
  • VersionList shows:
    • current app version
    • current robot version
  • [not now] closes modal and does not ignore current reinstall version
  • [reinstall] reinstalls current version

figure 6 (robot > app, app = latest)

robot = 3.7.0-beta1 | app = 3.6.2 | latest = 3.6.2
(This one is pretty weird, but can happen if more than one user interacts with a user and one of the users is running a beta app and then our example user here is running stable)

https://zpl.io/2jPQ4wx

  • Robot InformationCard button reads [Downgrade]
  • SyncRobotModal renders shows downgrade message
  • VersionList shows:
    • current app version
    • current robot version
  • [not now] closes modal and does not ignore current reinstall version
  • [downgrade robot] reinstalls current version

Install inProgress/Complete

  • When install of any kind is inProgress, spinner modal renders
  • When install of any kind is complete (response) restart robot modal renders
  • [not now] closes modal
  • [restart] restarts robot
@mcous mcous added app Affects the `app` project design labels Oct 2, 2018
@pantslakz
Copy link

this ticket wins for best breakdown ever

@umbhau umbhau added the feature Ticket is a feature request / PR introduces a feature label Oct 24, 2018
@umbhau umbhau added this to the Robot Version Management milestone Oct 24, 2018
@umbhau umbhau removed the design label Oct 25, 2018
@umbhau umbhau changed the title Robot update: Upgrade/downgrade warning Robot update: Upgrade/downgrade modal Oct 25, 2018
@Kadee80 Kadee80 assigned Kadee80 and mcous and unassigned pantslakz Nov 5, 2018
@Kadee80 Kadee80 added medium and removed extra-large labels Dec 7, 2018
@Kadee80
Copy link
Contributor

Kadee80 commented Dec 7, 2018

Updated issue to reflect testing plan for feature flag removal. Changed to size Medium due to the fact that testing/setup is quite time consuming.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
app Affects the `app` project feature Ticket is a feature request / PR introduces a feature medium
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants