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

plugin: Creator account filter. #132

Open
winder opened this issue Aug 2, 2023 · 0 comments
Open

plugin: Creator account filter. #132

winder opened this issue Aug 2, 2023 · 0 comments
Labels

Comments

@winder
Copy link
Contributor

winder commented Aug 2, 2023

Problem

It is common to have a set of creators who create many assets and/or applications, which are then delegated to other accounts. In this scenario the creator is only relevant at create time. After they have been delegated there are no longer references to the creator accounts.

Suppose a creator has made 10,000 ASAs and you want to track the usage of each of them, the current filter plugin would not allow it because the list of ASAs would vary over time as the creator continues to add new ones.

Solution

A new plugin with the following properties:

name: creator_filter
config:
    creators:
      - ADDR1
      - ADDR2
      - ADDR3
    # either algod or indexer can be provided to lookup IDs for assets and applications
    # associated with the addresses.
    algod:
        addr:
        token:
    indexer:
        addr:
        token:

During startup an in-memory list of IDs can be resolved from Indexer or algod. While processing blocks the list of IDs would grow or shrink as the creator creates or deletes things. Transactions associated with any of the IDs (or creators) are selected and all others are removed.

Note: instead of providing algod or indexer, the list of IDs can be stored in the data directory.

@algoanne algoanne added the good first issue Good for newcomers label Aug 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants