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

[do not merge] Test Aragon dapp #7349

Closed
wants to merge 2 commits into from
Closed

[do not merge] Test Aragon dapp #7349

wants to merge 2 commits into from

Conversation

rasom
Copy link
Contributor

@rasom rasom commented Jan 28, 2019

No description provided.

@status-github-bot
Copy link

Pull Request Checklist

  • Have you updated the documentation, if impacted (e.g. docs.status.im)?

@rasom rasom self-assigned this Jan 28, 2019
@status-im-auto
Copy link
Member

status-im-auto commented Jan 28, 2019

Jenkins Builds

Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ b1542ec #1 2019-01-28 08:51:33 ~14 min ios-e2e 📦 package
✔️ b1542ec #1 2019-01-28 08:51:44 ~14 min macos 📦 package
✔️ b1542ec #1 2019-01-28 08:52:10 ~15 min ios 📦 package
✔️ b1542ec #1 2019-01-28 08:53:24 ~16 min android 📦 package
✔️ b1542ec #1 2019-01-28 08:53:54 ~17 min android-e2e 📦 package
✔️ b1542ec #1 2019-01-28 08:55:28 ~18 min windows 📦 package
✔️ b1542ec #1 2019-01-28 09:00:10 ~23 min linux 📦 package

@rasom rasom mentioned this pull request Jan 28, 2019
@asemiankevich
Copy link
Contributor

@mandrigin cant perform any transaction, i see this screen and that is it. Tapping ENABLE does not work

image

@rasom
Copy link
Contributor Author

rasom commented Jan 28, 2019

@jeluard @flexsurfer any ideas?

@rasom
Copy link
Contributor Author

rasom commented Jan 28, 2019

@asemiankevich did you try it on ropsten?

@rasom
Copy link
Contributor Author

rasom commented Jan 28, 2019

works on ropsten

@asemiankevich
Copy link
Contributor

@rasom i can open the dapp. i cant send any transaction inside.

@rasom
Copy link
Contributor Author

rasom commented Jan 28, 2019

@asemiankevich, i see

no error in console when i press "enable", not sure if that's an issue on our side

@rachelhamlin
Copy link
Contributor

I think we should still merge the DApp listing and escalate issues to Aragon for them to look at. This way we're not blocking them. We can remove for next public release if it's still broken.

@rasom
Copy link
Contributor Author

rasom commented Jan 28, 2019

@rachelhamlin current PR shouldn't be merged because it contains staging url,
this one is to be merged #7347

The problem is that the issue still might be on our side and if we release it now we will need to make another release with fix. Would be great if someone from Aragon could check it and confirm/disprove that the issue is currently on their side.

@rachelhamlin
Copy link
Contributor

rachelhamlin commented Jan 28, 2019

@Serhy's test notes on https://aragon.staging.aragonpm.com/#/aracon.aragonid.eth:

  1. In the Settings Ethereum node = rinkeby.eth.aragon.network.
  2. Voting -> "+" -> Enter question -> tap Begin Vote -> nothing happens (same with MetaMask)
  3. Token Manager -> top-right button -> Enter your address -> Tokens to assign set to 1 -> submitt and form hides and that's all (same with MetaMask)
  4. Finance -> New Transfer -> ETH -> empty Dapp screen (same in MetaMask)
  5. Finance -> New Transfer -> SNT -> ... I have SNT in my address but it shows 'You have 0 SNT available'... -> anyway in amount enter 0 -> Submit Deposit -> This transaction will perform Deposit 0 SNT on Finance screen -> tap Create Transaction -> Wallet screen appears and I Sign this transaction (NOTE: i'm with Disabled web3 permission and on Rinkeby)
  6. If 5th item - under Mainnet then at the end it asks to connect to rinkeby.
  7. If 5th item with web3+address permissions in enabled state -> 'Please unlock and enable your Ethereum provider'

@0xc1c4da
Copy link
Contributor

heads-up @izqui @luisivan @sohkai @bpierre

@rasom rasom closed this Jan 28, 2019
@rasom rasom deleted the aragon-dapp-test branch January 28, 2019 13:56
@@ -149,6 +149,10 @@
:dapp-url "https://3box.io/"
:photo-path "contacts://3box"
:description "Create and manage your Ethereum Profile."}
{:name "Aragon"
:dapp-url "https://aragon.staging.aragonpm.com/#/aracon.aragonid.eth/"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We will deploy to mainnet in the next few hours, the correct URL will be https://mainnet.aragon.org.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the correct link was added in #7347

@AquiGorka
Copy link

In the Settings Ethereum node = rinkeby.eth.aragon.network.

The correct and full URL is: wss://rinkeby.eth.aragon.network/ws

@sohkai
Copy link

sohkai commented Jan 28, 2019

@rasom @rachelhamlin It looks like we might've given you the wrong organization to test with. aracon.aragonid.eth has locked down permissions where only token holders can invoke actions (create new votes, mint new tokens, withdrawl funds). The lack of response is a different bug on our part where we do a huge computation (that may span several minutes) to find a path and is not something we consider a showstopper (won't affect normal users who are accessing organizations they have control over).

I've created a different organization, https://aragon.staging.aragonpm.com/#/statustest.aragonid.eth (or statustest as the name) that has more open permissions to test with. This should solve issues 1-3; we're looking into 4 and 7.

Issue 5 is likely due to the network; do you have rinkeby SNT (and are inputting the correct token address)? Otherwise, you can play with the test tokens that are available in https://aragon.staging.aragonpm.com/#/statustest.aragonid.eth/settings.

Issue 6 is correct; our staging environment is rinkeby-only.

Issue 7 is something we're investigating but might need help with. We're using the injected ethereumBeta object, first requesting eth_requestAccounts and then web3.eth.getAccounts(). It looks like when we do ask for the account, we're not getting any back.

@jeluard
Copy link
Contributor

jeluard commented Jan 28, 2019

@sohkai ethereumBeta is not ready yet. You should rely on ethereum.enable() that will return you back the list of addresses.

@sohkai
Copy link

sohkai commented Jan 28, 2019

@jeluard Is the only difference that ethereum doesn't implement the new EIP-1193 send() calls (e.g. eth_requestAccounts)? Can we do new Web3(ethereum) and expect it to be fully functioning?

@jeluard
Copy link
Contributor

jeluard commented Jan 28, 2019

ethereum and ethereumBeta have the same shape and use. Just beta defines some extra methods.

Just curious: where did you find reference about ethereumBeta?

@jeluard
Copy link
Contributor

jeluard commented Jan 28, 2019

@sohkai Do you have a link we could use to test with mainnet?

@flexsurfer
Copy link
Member

flexsurfer commented Jan 28, 2019

@jeluard Is the only difference that ethereum doesn't implement the new EIP-1193 send() calls (e.g. eth_requestAccounts)? Can we do new Web3(ethereum) and expect it to be fully functioning?

@sohkai yes you can do new Web3(ethereum) but one thing you need to do is to call
ethereum.enable() and you need to set defaultAccount like this https://github.com/status-im/snt-voting/blob/7bac3c9613e11cf13d65c8de1dec23d6669a5078/app/components/flow/wallet/ExternalWallet.js#L33

@sohkai
Copy link

sohkai commented Jan 28, 2019

@jeluard We heard about ethereumBeta from a development chat we had last week when we initially found out our app broke on Status. We'll switch to using just ethereum and seeing if that helps.

@flexsurfer Ahh... it could be we're not calling ethereum.enable() when you don't land and go through onboarding immediately. Investigating now. I assume "privacy mode" is enabled by default?

@flexsurfer
Copy link
Member

@sohkai no, in the latest Status release it's not enabled by default, only in nightlies, and will be enabled in next release

@sohkai
Copy link

sohkai commented Jan 29, 2019

@jarradh @rasom @rachelhamlin @jeluard @flexsurfer

We've finished deploying to Rinkeby (rinkeby.aragon.org) and Mainnet (mainnet.aragon.org) on production. Would love to have some eyes on it and have it released as part of the next build!

Testing will depend a lot on the organizations used; we don't support creating organizations from mobile yet, so the recommended way to test is to create an organization on desktop and then switch to testing it on mobile.

@jeluard
Copy link
Contributor

jeluard commented Jan 29, 2019

@sohkai Could you check that your changes (relying on ethereum) work as expected?

@rachelhamlin
Copy link
Contributor

Hey @sohkai, what flow are you guys looking to demo at Aracon? We're having some issues with assigning tokens. Not sure about other demo options cc @Serhy

@flexsurfer
Copy link
Member

flexsurfer commented Jan 29, 2019

Go to Aragon (mainnet.aragon.org) -> select Demo at bottom.
Then Finance top-right button in Dapp ->Deposit -> Select Token -> select any token from list (or type token that is in your wallet but not in the list offered by Dapp) -> Submit Deposit.

@sohkai There should be 2 transactions in a row, but only one is shown, we'll fix that in the next release, but for now, it can be fixed in a Dapp by using batch requests https://github.com/ethereum/wiki/wiki/JavaScript-API#batch-requests

GitHub
The Ethereum Wiki. Contribute to ethereum/wiki development by creating an account on GitHub.

@Serhy
Copy link
Contributor

Serhy commented Jan 29, 2019

It's all fine with Voting creation, can create transaction from 'Token Manager', can send ETH in Finance section.

However, there is an issue with sending tokens from Aragon -> Demo organization (https://mainnet.aragon.org/#/0x8A83D4bCE45b4C4F751f76cf565953D1E4A3BF0a ) -> Finance section

  1. Open Status with the account having ETH and tokens (e.g. with SNT)
  2. Open Aragon from the + -> Open Dapp -> Aragon - Open
  3. Withing Aragon Dapp tap -> Demo organization (so it's URL is https://mainnet.aragon.org/#/0x8A83D4bCE45b4C4F751f76cf565953D1E4A3BF0a )
  4. Top-left menu button -> Finance
  5. Tap top-right wallet button to navigate to open New Transfer screen.
  6. From the 'Token' list select the token with >0 balance for your account (e.g. SNT in our current steps)
  7. Enter valid amount (less than your available amount)
  8. Tap Submit Deposit.
  9. 'Create transaction' screen appears. You will need to sign TWO transactions further.
  10. Tap 'Create transaction' button. Status 'Send transaction' wallet screen appears. Tap Sign transaction -> enter your password -> and tap 'Sign'
  11. Tap 'Done' on the appeared Status transaction confirmation screen.
    Actual result: Waiting for signature... screen keep staying. No second 'Send transaction' wallet screen appears.
    Expected result: Second 'Send transaction' screen appears

@mandrigin
Copy link
Contributor

сс @rachelhamlin @jarradh ↑↑↑ this is the exact issue. I will proceed with the release anyway.

@mandrigin
Copy link
Contributor

mandrigin commented Jan 29, 2019

it can be fixed server-side in the DApp itself too as @flexsurfer pointed out

@sohkai
Copy link

sohkai commented Jan 29, 2019

@jeluard

Could you check that your changes (relying on ethereum) work as expected?

Looks to be working; haven't figured out how to enable the privacy mode but getting the account on the current TestFlight build works 👍

@rachelhamlin

Could you explain what you saw with assigning tokens? AFAIK there shouldn't be any issues, outside of syncing the state (our node seems to be quite slow this morning, even before the annoucement).

@flexsurfer @mandrigin We will likely wait for this to be fixed, but will investigate batch requests. AFAIK it shouldn't be doing much differently under the hood (is there something it declares to let a node know a transaction is part of a batch?).

@jeluard
Copy link
Contributor

jeluard commented Jan 29, 2019

@sohkai In profile you can switch Browser privacy mode on/off

@flexsurfer
Copy link
Member

@flexsurfer @mandrigin We will likely wait for this to be fixed, but will investigate batch requests. AFAIK it shouldn't be doing much differently under the hood (is there something it declares to let a node know a transaction is part of a batch?).

@sohkai it works in a different way in Status itself, and we have a bug when dapp sends transaction in the moment we show sent screen for the previous transaction, we'll fix this for sure, just if you need it asap, batch is a workaround

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Archived in project
Development

Successfully merging this pull request may close these issues.