-
Notifications
You must be signed in to change notification settings - Fork 199
Conversation
My only issue with this feature is that when switching to beta mode, it's essentially signing the user out and asking them to restore again. Because they probably have never signed into |
I wonder if there is a secure way to be able to transport the profile to the beta instance. We could send them to the link with the magic recovery code as a query, they'd just have to enter a password to restore. If they had previously logged in, the query param would just be ignored. |
This is a cool feature. Should come in handy for internal usage and getting some % of the community using beta mode for us. Agreed with @yknl comment. If we login for them, should we have them confirm that they are moving their potentially real blockstack keys from a "secure" local installation to a potentially less secure web hosted browser? |
Good feedback. OK - I'll update it so that, when you enable beta mode, you:
|
@markmhx @jeffdomke @aulneau I could use some design help here. You see this when you first enable Beta mode: What happens if you 'continue' is you get redirected to The copy is pretty janky. Any thoughts? |
I think it's generally fine, but the first thing I notice is it's asking if you want to continue, but it provides no way to not continue, eg a back or cancel button. An alt proposal could be that when entered into beta mode, it can take you directly to the beta browser, with the enter password screen visible, and then that is the stage for them to determine if they want to continue or cancel. |
If a user enables beta mode then disables it, will they retain their localhost session or does that get nuked upon the beta enable? I presume the former. Here's how I'd recommend writing the copy to incorporate @zone117x's suggestion about hosted security as well:
And the buttons should be:
|
The thing is, since this 'beta mode' feature uses native MacOS code, there isn't really a way to turn it off from within the app. You can only turn it off and on in the menu bar (like using Dev mode). So, I think the copy needs to be more like: "You've enabled Beta Mode. From now on, Blockstack authentication requests will send you to beta.browser.blockstack.org. Would you like to securely log in using your current account?" Continue -> go to beta and decrypt your key |
I see, so basically once they've chosen "Beta Mode" in the menu bar, it's enabled and the user just has to authenticate still. How about this?
And the buttons should be the same as we have in the standard initial auth modal (for consistency): |
I agree, except I don't think we should say:
We don't indicate anywhere that the local build is 'more secure', and whether it is or not isn't crystal clear. It's mainly just "more decentralized". |
Makes sense, how about just the following then for that paragraph?
|
The tense "will now start redirecting" is very confusing. The beta is enabled it is redirecting -- present tense is now so you don't need the adverb and or the participle form. Clarity.
It also seems pretty obvious Beta mode will be for testing or trying out. I don't think you need to state that here. |
"is redirecting" makes me feel like the currently viewed page is going to redirect automatically. i.e. present tense makes the redirection a bit too immediate? "will now redirect" maybe better? So that it has a sense of "going forward from now". Separately per the last line in your copy suggestion, it appears the user won't have to authenticate again locally if they disable beta mode, though I may understand that wrong? |
No, it works by holding the option key and clicking the blockstack icon in the MacOS menu bar. Thats how you enable/disable it. You won't have to reset your browser when you turn it off/on. |
@hstove is BETA mode only an option in Mac? |
With this pull request, it is. We would need to do additional work on other platforms to mimic this. |
Would take like 15 min to add the same Windows context menu item - worries there. |
…to feature/beta-mode
* develop: Added some additional Web Browser process start exception handling for unpredictable failure cases Implemented detection and redirection back to the originating web browser for the Windows app. Fix the blockstackProxy.js not listening on loopback interface which trigger Windows Firewall warnings/prompts. Fix problems caused by external protocolhandler.exe file: * Use main app binary for protocol handler registration. * Fix broken auth when Blockstack app is not already running. * Remove duplicate blockstack.ico file.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems to be working great except for a bug I'm running into during the hand off to beta.browser.blockstack.org:
- Click enable beta mode menu option.
- Click "Sign in with your existing ID" on the
http://localhost:8888/go-to-beta page
- Enter password on the
https://beta.browser.blockstack.org/seed?encrypted=...
page. - Click through form, perform the
Select words #x and #y
step. - Click "Go To Blockstack".
- End up back at the "Create your Blockstack ID" page.
(clear localStorage on beta.browser.blockstack.org
to reproduce again).
Will approve once we have #1863 merged and deployed to I have a UX request: after the redirect handoff it should only require entering the password. Its pretty annoying to have to go through the flow designed for on-boarding which is:
We could add a query param (like Not a deal breaker at all for this PR, I can make a separate issue if necessary? |
We decided during a review call to change the first button to "Create new ID or sign in" and remove the second one. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Re-tested and works great.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks @hstove, looks good now
This PR adds a new 'mode' to the MacOS app to enable "Beta Mode". In Beta mode, all auth requests are redirected to
https://develop--reporter-beaver-73821.netlify.com
. We'll probably want to change this URL to something likebeta.browser.blockstack.org
before releasing this feature.This URL is auto-built for every new commit to
develop
. So, as soon as new things are merged to develop, you can test them without having to run a local environment.This is great for internal testing, but it's also helpful for end users who run into breaking bugs. Instead of having their Browser be in a broken state until we push a release, we can at least let them know that they can try beta mode as soon as we have a fix (with understandable precautions).
Testing: alt-click the icon and then enable Beta Mode. When beta mode is enabled, you shouldn't be able to enable dev mode, and vice versa.
This is built on top of #1803, because I needed that code to build and test a Mac app locally.