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

[ETHEREUM-CONTRACTS] Agreement Forwarder Contract(s) #919

Closed
3 tasks done
0xdavinchee opened this issue Jun 28, 2022 · 2 comments · Fixed by #982
Closed
3 tasks done

[ETHEREUM-CONTRACTS] Agreement Forwarder Contract(s) #919

0xdavinchee opened this issue Jun 28, 2022 · 2 comments · Fixed by #982
Assignees
Labels
Project: PROTOCOL-EVMv1 Superfluid protocol EVM v1 implementation in Solidity Tag: UX Related to the user experience topic Type: Enhancement New feature or request
Projects

Comments

@0xdavinchee
Copy link
Contributor

0xdavinchee commented Jun 28, 2022

Problem

When users use Superfluid, they need to use host.callAgreement to create/update/delete an agreement, however because of the current design, when users go to the block explorer they can decode the inputs to see 3 parameters:

  • agreementClass
  • callData
  • userData

Most of the information is in callData, however this is just a jumble of bytes and expecting most users/developers to spend excessive time to break this down is an unrealistic expectation.

Solution & Reasoning

Create an Agreement Forwarder Contract as an intermediate step before refactoring the core contracts to adhere to a token centric contract interface. This contract forwards your calls to the agreement contracts and will provide more visibility at the block explorer level on the parameters being passed for the agreement.

Todos

  • Implement an Agreement Forwarder Contract for CFAv1
  • Implement an Agreement Forwarder Contract for IDAv1
  • Deployment & Tests
@0xdavinchee 0xdavinchee added Type: Enhancement New feature or request Tag: UX Related to the user experience topic Project: PROTOCOL-EVMv1 Superfluid protocol EVM v1 implementation in Solidity labels Jun 28, 2022
@0xdavinchee 0xdavinchee added this to Untriaged in PROTO via automation Jun 28, 2022
@0xdavinchee 0xdavinchee self-assigned this Jun 28, 2022
@0xdavinchee 0xdavinchee moved this from Untriaged to Backlog in PROTO Jun 28, 2022
@hellwolf hellwolf assigned d10r and unassigned 0xdavinchee Jul 4, 2022
@hellwolf hellwolf moved this from Backlog to In progress in PROTO Jul 5, 2022
@hellwolf hellwolf moved this from In progress to Backlog in PROTO Jul 5, 2022
@hellwolf hellwolf moved this from Backlog to In progress in PROTO Jul 5, 2022
@hellwolf hellwolf linked a pull request Aug 1, 2022 that will close this issue
@hellwolf
Copy link
Contributor

hellwolf commented Aug 1, 2022

So about the agreement forwarder, it is clear now after sync with everyone:

The use cases intended for

  • User can create streams on etherscan easily using it
  • Transactions created on our dashboard or through our SDK would use it by default, hence all etherscan transactions are legible.

Additional technical requirement

It was not clear (but somewhat implied) from the beginning:

  • The interface of the agreement forwarder should not be "surprising", and too different from agreement library and SDK core library function name patterns.

@0xdavinchee 0xdavinchee removed a link to a pull request Aug 30, 2022
@hellwolf hellwolf linked a pull request Aug 30, 2022 that will close this issue
@hellwolf hellwolf moved this from In progress to Review in progress in PROTO Sep 5, 2022
@hellwolf
Copy link
Contributor

to be tracked in: #1079

PROTO automation moved this from Review in progress to Done Sep 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Project: PROTOCOL-EVMv1 Superfluid protocol EVM v1 implementation in Solidity Tag: UX Related to the user experience topic Type: Enhancement New feature or request
Projects
No open projects
PROTO
  
Done
Development

Successfully merging a pull request may close this issue.

3 participants