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

Submit Transactions Agent Pallet proposal #2467

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

OIyoung
Copy link

@OIyoung OIyoung commented Dec 16, 2024

Project Abstract

The Transactions Agent Pallet is designed to provide a proxy signing tool for the Substrate ecosystem, aiming to enhance the user interaction experience on Substrate chains. It includes signer accounts and proxy accounts, allowing a user’s wallet address (signer account) to perform on-chain transactions via a token-holding wallet address (proxy account) even without holding tokens.

Grant level

  • Level 1: Up to $10,000, 2 approvals
  • Level 2: Up to $30,000, 3 approvals
  • Level 3: Unlimited, 5 approvals (for >$100k: Web3 Foundation Council approval)

Application Checklist

  • The application template has been copied and aptly renamed (project_name.md).
  • I have read the application guidelines.
  • Payment details have been provided (Polkadot AssetHub (USDC & DOT) address in the application and bank details via email, if applicable).
  • I understand that an agreed upon percentage of each milestone will be paid in vested DOT, to the Polkadot address listed in the application.
  • I am aware that, in order to receive a grant, I (and the entity I represent) have to successfully complete a KYC/KYB check.
  • The software delivered for this grant will be released under an open-source license specified in the application.
  • The initial PR contains only one commit (squash and force-push if needed).
  • The grant will only be announced once the first milestone has been accepted (see the announcement guidelines).
  • I prefer the discussion of this application to take place in a private Element/Matrix channel. My username is: @_______:matrix.org (change the homeserver if you use a different one)

@github-actions github-actions bot added the admin-review This application requires a review from an admin. label Dec 16, 2024
Copy link
Contributor

github-actions bot commented Dec 16, 2024

CLA Assistant Lite bot All contributors have signed the CLA ✍️ ✅

@OIyoung
Copy link
Author

OIyoung commented Dec 16, 2024

I have read and hereby sign the Contributor License Agreement.

@OIyoung
Copy link
Author

OIyoung commented Dec 16, 2024

recheck in this Pull Request

@OIyoung OIyoung closed this Dec 16, 2024
@OIyoung OIyoung reopened this Dec 16, 2024
@semuelle semuelle self-assigned this Dec 17, 2024
Copy link
Contributor

@keeganquigley keeganquigley left a comment

Choose a reason for hiding this comment

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

Thanks for the application @OIyoung we don't pay to ETH mainnet addresses anymore, please see our payment options and let us know if you are willing to be paid in 50% vested DOT?

  • The system you're describing sounds very similar to pure proxies. What are the differences? Are you hearing from others that there is a great need in the ecosystem for this?
  • What advantages does a system like this have over using the existing proxy pallet?

@OIyoung
Copy link
Author

OIyoung commented Dec 23, 2024

Thanks for the application @OIyoung we don't pay to ETH mainnet addresses anymore, please see our payment options and let us know if you are willing to be paid in 50% vested DOT?

  • The system you're describing sounds very similar to pure proxies. What are the differences? Are you hearing from others that there is a great need in the ecosystem for this?
  • What advantages does a system like this have over using the existing proxy pallet?

@keeganquigley Thanks for your reply.

We are willing to change the payment method and accept 50% vested DOT.

In fact, we have used pure proxies before, and it is indeed a great feature. Although Transactions Agent Pallet, pure proxies, and proxy pallet may sound similar, they serve different functions and aim to achieve different goals.

Their differences are as follows:

​ 1. Problems They Solve

​ • Pure proxies reduce the exposure of the primary account’s private key.

​ • Transactions Agent Pallet improves the conversion rate from acquiring users to user registration by allowing users to use Substrate applications without needing tokens.

​ 2. Functions of Accounts

​ • Pure proxies are new accounts created (not assigned) by a primary account. The primary account acts as a proxy on behalf of the pure proxy. Pure proxies are keyless, non-deterministic accounts, meaning they do not have private keys but possess randomly generated addresses.

​ • The proxy accounts in the Transactions Agent Pallet are controlled accounts with private keys. Their primary tasks include not only signing transactions on behalf of others but also paying gas fees for the signed accounts and implementing various payment strategies.

​ 3. User Entry Barriers

​ • Proxy pallet requires users to pay at least one transaction’s gas fee for authorization.

​ • Transactions Agent Pallet is barrier-free for users, allowing them to make calls without gas.

In simple terms:

​ • Pure proxies enhance the security of the primary account’s signature, serving as a security tool that allows users to interact with DAPPs more safely.

​ • Proxy pallet addresses the issue of gas fees during transactions but has an entry barrier requiring authorization.

​ • Transactions Agent Pallet is a tool designed for operational purposes, enabling more users to utilize DAPPs.

These features are not mutually exclusive; they can even complement each other. For instance, a sub-key can be generated via pure proxies, and Transactions Agent Pallet can then be used to call the proxy pallet for authorized transactions.

Regarding the project’s advantages:

We are aware that the Substrate ecosystem has many proposals aimed at solving technical and security issues. However, few consider where the users are and how to acquire them. Transactions Agent Pallet provides a marketing tool for the Substrate ecosystem, attracting more users and converting a higher proportion of them into paying users.

Copy link
Member

@semuelle semuelle left a comment

Choose a reason for hiding this comment

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

Thank you for the application and sorry for the delay here. This sounds quite interesting, but I have a few questions:

  • How does the user control the proxy account? Is it assumed that the user has an account in a wallet with native token?
  • How is the proxy gas fee calculated and paid for? Can you provide a sequence or architecture diagram to clarify the work being done?
  • Can you provide any evidence of you or your team having experience in the ecosystem and in developing and maintaining open source software?
  • Have you talked to any parachain teams that would be interested in integrating this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
admin-review This application requires a review from an admin. stale
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants