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

End to end Multichain Faucet Implementation #572

Open
tarunkhasnavis opened this issue Nov 14, 2024 · 3 comments
Open

End to end Multichain Faucet Implementation #572

tarunkhasnavis opened this issue Nov 14, 2024 · 3 comments
Assignees
Labels
design required This issue requires design support enhancement New feature or request

Comments

@tarunkhasnavis
Copy link
Contributor

tarunkhasnavis commented Nov 14, 2024

This is a continuation of the efforts started here: #509

We need to provide a claim flow that allows users to claim to multiple chains, specifycing amounts for each chain. This will change the way the faucet works at all levels (contract, backend service, and front-end experience). It will make claiming 1 smooth step and will take the cost of bridging away from the user.

@tarunkhasnavis tarunkhasnavis changed the title End to end Multi-chain Faucet Implementation End to end Multichain Faucet Implementation Nov 14, 2024
@tarunkhasnavis tarunkhasnavis added enhancement New feature or request design required This issue requires design support labels Nov 14, 2024
@tarunkhasnavis
Copy link
Contributor Author

tarunkhasnavis commented Nov 21, 2024

In order to avoid making contract changes we must first test out the behavior of Safe.call with an encoded multicall function. In the scenario where the config.amount exceeds or below we expect the txn to revert. If this works, we may need to have the designs reflect this by making sure the total amount the user claims equals 1.0 or 0.1 ETH exactly. @mayanksayshi

Created eng tracking here: #575

@tarunkhasnavis
Copy link
Contributor Author

tarunkhasnavis commented Nov 22, 2024

Was able to get a working multicall claim without making contract changes and tested the 3 scenarios:

  • The aggregate amount in the multicall > allowed amount (1.0 ETH for onchain auth)
  • The aggregate amount in the multicall < allowed amount
  • The aggregate amount in the multicall = allowed amount

We can exclude contract changes but need to make sure two things are scoped into the design and eng:

  1. Ensure a strict requirement that the amount total from the multicall data equals exactly the value (config.amount)
  2. Right now the UI says its successful after the initial transfer to the multicall contract and doesn't catch that the txn reverts later. Need to modify the transaction check on the UI to reflect the accurate status. Maybe use waitForTransactionReciept

We should now be able to complete eng scoping and iterate towards a final design with @mayanksayshi

cc @fainashalts @tremarkley @jvmi7

@mayanksayshi
Copy link

@tarunkhasnavis here is the Figma link https://www.figma.com/design/rBlLeciYg1jJBUDYmtjzr0/Faucet-with-Multichain-Support?node-id=4473-5293&t=UDTJ2tF31SqYZbms-1

@tremarkley tremarkley removed their assignment Dec 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
design required This issue requires design support enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants