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

add support for users to make recurring donations on base network #4875

Closed
10 tasks
divine-comedian opened this issue Nov 26, 2024 · 14 comments
Closed
10 tasks
Assignees

Comments

@divine-comedian
Copy link
Contributor

divine-comedian commented Nov 26, 2024

We will need to add support for users to create recurring donations to projects on Base network. This includes

  • deploying allo protocol anchor contracts for projects on base by donor when no contract exists for given project
  • handle network switch (changing token list available) for user to use Optimism or Base
  • editing documentation & UI to reflect support for Optimism AND Base
  • adding support for new base tokens
  • update streamable token balances table to include network column
  • ensure recurring donations table captures recurring donations made on base network

Image

Image

Tokens supported (to date)

USDC (native)

underlying token: 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
super token - USDCx: 0xD04383398dD2426297da660F9CCA3d439AF9ce1b
details: https://explorer.superfluid.finance/base-mainnet/supertokens/0xd04383398dd2426297da660f9cca3d439af9ce1b?tab=streams

ETH

underlying token: N/A (native token)
super token - ETHx : 0x46fd5cfB4c12D87acD3a13e92BAa53240C661D93
details: https://explorer.superfluid.finance/base-mainnet/supertokens/0x46fd5cfb4c12d87acd3a13e92baa53240c661d93?tab=streams

DAI

underlying token: 0x50c5725949A6F0c72E6C4a641F24049A917DB0Cb
super token - DAIx: 0x708169c8C87563Ce904E0a7F3BFC1F3b0b767f41
details: https://explorer.superfluid.finance/base-mainnet/supertokens/0x708169c8c87563ce904e0a7f3bfc1f3b0b767f41?tab=streams

Degen

underlying token: 0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed
super token - DEGENx: 0x1efF3Dd78F4A14aBfa9Fa66579bD3Ce9E1B30529
details: https://explorer.superfluid.finance/base-mainnet/supertokens/0x1eff3dd78f4a14abfa9fa66579bd3ce9e1b30529?tab=streams


Testing Link

https://giveth-dapps-v2-nmyowivv3-general-magic.vercel.app/

Acceptance Criteria

  • User can connect to donate recurring donation page while connected to base network
  • user can see drop down menu of token balances and super token balances on base network
  • user can successfully create recurring donation on base
  • user can successfully add % optional donation to giveth for recurring donations on base.
  • if project has not setup recurring donations, donor can enable recurring donations by signing an extra transaction on base network
  • can successfully make recurring donation with all listed available tokens (check token list above)
  • user can successfully top-up super token balance from donate page when they have an existing super token balance and are making a new recurring donation
  • when user already has recurring donation to project with same token selected they can successfully modify their recurring donation
  • when user is connected to recurring donation page and on unsupported network (not base or optimism) they see the component prompting them to switch network
  • the switch network component works correctly for switching to base and/or optimism
@github-project-automation github-project-automation bot moved this to New Issues in All-Devs Nov 26, 2024
@divine-comedian divine-comedian moved this from New Issues to Dev Research in All-Devs Nov 26, 2024
@divine-comedian divine-comedian added this to the SuperFluid Drop milestone Nov 26, 2024
@kkatusic kkatusic moved this from Dev Research to In Progress in All-Devs Dec 6, 2024
@divine-comedian
Copy link
Contributor Author

some options are failing, need to reset super tokens to 0.
not sure where errors lie, getting gas limit errors on USDC

if the anchor setup on the back-end isn't done properly then it won't work.

other flows are working but USDC isn't working again

@divine-comedian
Copy link
Contributor Author

@kkatusic I updated one design for when user is connected to wrong network - since before there was only one switch network button that defaulted to switching to optimism we will now need to handle letting the user choose which network they want to switch to if they are not on a supported network

image

The two highlighted texts "OP Mainnet" and "Base" now should trigger the network switch when clicked by the user in their web wallets

@kkatusic
Copy link
Collaborator

kkatusic commented Dec 9, 2024

@divine-comedian is this better:

Screenshot 2024-12-09 at 22 04 37

@divine-comedian
Copy link
Contributor Author

@divine-comedian is this better:

Screenshot 2024-12-09 at 22 04 37

It's too big, let's use the design I shared above.

@kkatusic
Copy link
Collaborator

No problem @divine-comedian added like you suggested ;)

@divine-comedian
Copy link
Contributor Author

@divine-comedian needs to add AC and create testing deployment on vercel with staging FE and production BE

@divine-comedian divine-comedian moved this from In Progress to QA in All-Devs Dec 19, 2024
@LatifatAbdullahi
Copy link

LatifatAbdullahi commented Dec 20, 2024

@kkatusic @divine-comedian

Test Update

  • User can connect to donate recurring donation page while connected to base network - Pass
  • User can see drop down menu of token balances and super token balances on base network - Pass
  • User can successfully create recurring donation on base - Pass
  • User can successfully add % optional donation to giveth for recurring donations on base - Pass
  • If project has not setup recurring donations, donor can enable recurring donations by signing an extra transaction on base network - Pass
  • Can successfully make recurring donation with all listed available tokens (4 tokens Passed - 1 Pending)
  • The two highlighted texts "OP Mainnet" and "Base" now should trigger the network switch when clicked by the user in their web wallets - Pass
  • When user is connected to recurring donation page and an unsupported network (not base or optimism) they see they
    see component prompting them to switch network - Pass
  • The switch network component works correctly for switching to base and/or optimism - Pass
  • Donation with USDC token - Pass
  • Donation with ETHEREUM token - Pass
  • Donation with DAI - Pass
  • Donation with DEGEN token - Pass
  • Donation with "Coin base wrapped BTC" - Pending

Issues

  • User can successfully top-up super token balance from donate page when they have an existing super token balance and are making a new recurring donation - Failed

image

  • Occasionally when User is on Base network, it randomly switches to OP Mainnet (difficult to reproduce)
  • Donations in all tokens returning Total donated- 0 , USD value - 0 and Status - Pending in Donors Recurring Donations Table
image

-Donations in all tokens returning Total Donated - 0 and USD value - 0 on the Recurring Donations Table of the Projects.

image
  • When user already has recurring donation to project with same token selected they can successfully modify their recurring donation - Failed
    Since the status of all the Base recurring donations is "Status", Users can not modify their recurring donations

image

@LatifatAbdullahi
Copy link

LatifatAbdullahi commented Dec 23, 2024

@kkatusic

  1. The data for Total Donated, USD and Status has been updated for the Projects donated to but not for Donations made to Giveth
image
  1. User can successfully top-up super token balance from donate page when they have an existing super token balance and are making a new recurring donation - Failed
DAO.Coalition._.Giveth.-.Google.Chrome.2024-12-23.15-50-29.mp4

image

  1. Occasionally when User is on Base network, it randomly switches to OP Mainnet (difficult to reproduce)

  2. Donations made with ETH shows NaN

image
  1. The Streamable token table is not updated after a recurring donation is created.
image
  1. Recurring Donation with OP Mainnet on the Vercel only goes through when Giveth is not included,

(Its throws error with no gas token even though I have gas token(Recurring donations with Giveth included))

image

image

  1. Currently unable to end a Recurring donation

image

@divine-comedian
Copy link
Contributor Author

divine-comedian commented Dec 23, 2024

Update:

We will cut scope for adding support for cbBTC recurring donations on Base for us to focus on making sure the core features of the integration work.

@LatifatAbdullahi
Copy link

Test Update

@kkatusic @divine-comedian

  • User can connect to donate recurring donation page while connected to base network - Pass
  • User can see drop down menu of token balances and super token balances on base network - Pass
  • User can successfully create recurring donation on base - Pass
  • User can successfully add % optional donation to giveth for recurring donations on base - Pass
  • If project has not setup recurring donations, donor can enable recurring donations by signing an extra transaction on base network - Pass
  • Can successfully make recurring donation with all listed available tokens (check token list above) - Pass
  • Donation with USDC token - Pass
  • Donation with ETHEREUM token - Pass
  • Donation with DAI - Pass
  • Donation with DEGEN token - Pass
  • User can successfully top-up super token balance from donate page when they have an existing super token balance and are making a new recurring donation - Pass
  • When user already has recurring donation to project with same token selected they can successfully modify their recurring donation - Pass
  • When user is connected to recurring donation page and an unsupported network (not base or optimism) they see the component prompting them to switch network - Pass
  • The switch network component works correctly for switching to base and/or optimism - Pass
  • The two highlighted texts "OP Mainnet" and "Base" now should trigger the network switch when clicked by the user in their web wallets - Pass

@kkatusic
Copy link
Collaborator

Veni, vidi, vici

@divine-comedian
Copy link
Contributor Author

divine-comedian commented Dec 27, 2024

@LatifatAbdullahi this issue passed QA? If so can you change the status to Done 😃

@LatifatAbdullahi
Copy link

@kkatusic @divine-comedian

All other cases have passed, however;

All the details for the donations to projects have been updated as expected except that of recurring donation to Giveth, still showing pending and other details 0

image

@divine-comedian
Copy link
Contributor Author

@LatifatAbdullahi Let's follow up this last issue in #4884 since it seems more relevant to that page.

@divine-comedian divine-comedian moved this from Done to Merged to Production in All-Devs Jan 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Merged to Production
Development

No branches or pull requests

4 participants