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

V1 - Current development track #1

Closed
30 of 47 tasks
curryrasul opened this issue Aug 21, 2023 · 3 comments
Closed
30 of 47 tasks

V1 - Current development track #1

curryrasul opened this issue Aug 21, 2023 · 3 comments
Labels

Comments

@curryrasul
Copy link
Contributor

curryrasul commented Aug 21, 2023

Circuits

  • PSI circuit
  • Circom tests for all circuits
  • Script to generate inputs and vkeys for circuits
  • Script to generate proof for circuits
  • Circuit for relayer transport?

Contracts

  • Unregistered funds, claim functionality and refund mechanism
  • Proof verifier for all circuits
  • Extension flow with separate account per user
  • Use Token Registry and DKIM Registry from zk-email-verify
  • Relayer transport mechanism
  • Extension management functionality (install/remove ext for users)
  • Fee management and relayer incentives
  • PSI point registration
  • Extension registry on chain? (name->address mapping for extensions)
  • Unclaimed state for extensions
  • Relayer registry on chain with hostnames?
  • Unit test for all functionality to cover all cases
  • Integration test with actual verifiers
  • Deploy scripts

## Relayer

  • Handle account initialisation flow (user reply to invitation email) + proof generation
  • Handle claim unclaimed funds for newly initialised account
  • Handle claim unclaimed funds for existing account when randomness received (from other relayer or via public api)
  • Contact other relayer to see if the recipient exist (PSI)
    • Send invitation email if not
    • Communicate with other relayer to generate recipient proof
  • Handle PSI requests and proof generation from other relayer
  • Proof generation for normal wallet operations (send, set ext, extensions commands...)
  • Handle account transport emails (become the new relayer using user's original init email)
  • Register unclaimed funds for user if no-relayer acknowledge existence of recipient
  • DB: Store all unclaimed fund email randomness and check them when new account is initialised
  • Handle automatic send if the sender deposit tokens later?
  • API:
    • API for the UI to read wallet details of a user
    • Authentication via magic link
    • API to return ETH, TOKEN balance of a user
    • API to list users transaction history
    • API to list all extensions installed by a user
    • Generic API to return extension state of a user?

UI

  • UI to login using email + magic link
  • Show ETH and token balances
  • Email generation for wallet operations
  • Extension store page - install and remove extensions
  • Setting section to choose the user's relayer
  • UI to deposit funds to an email wallet from EOA
  • Embed UI created by extension dev?

Docs:

  • "How to use" page
  • "How to implement extension" page
@curryrasul curryrasul pinned this issue Aug 21, 2023
@saleel saleel changed the title Current development track V1 - Current development track Sep 5, 2023
@AtHeartEngineer
Copy link

@curryrasul Hey! Would you mind updating this to show what still needs work done?

@saleel
Copy link
Member

saleel commented Jan 6, 2024

I think we can close this issue. Most of the tasks here are done already, and few are no longer relevant based on our current UX.
We can create separate individual issues for things that are still needed.

@Divide-By-0
Copy link
Member

Agreed.

I think we can close this issue. Most of the tasks here are done already, and few are no longer relevant based on our current UX. We can create separate individual issues for things that are still needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: Done
Development

No branches or pull requests

4 participants