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 alt-registry allocation spec #41

Merged
merged 1 commit into from
Jul 7, 2023
Merged

add alt-registry allocation spec #41

merged 1 commit into from
Jul 7, 2023

Conversation

nfrgosselin
Copy link
Contributor

No description provided.

### Custom Variables
This strategy will need the following custom variables:
- `poolOpen` - boolean value that represents whether the pool is accepting new applications
- `alternateRegistry` - location of alternate registry of eligible recipients
Copy link
Contributor

Choose a reason for hiding this comment

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

I think we should dial in on one specific example like Hypercerts, Passport(when onchain is ready), Givith or Optimism.

EAS is another option which I am very fond of experimenting with.

Copy link
Contributor

Choose a reason for hiding this comment

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

Based on how the protocol has developed, will it still need these custom variables? I don't think so

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@0xZakk poolOpen might not be relevant, but we need somewhere to account for how the strategy will check for eligibility, right?

- Is `poolOpen` true?
- If yes, proceed
- If no, revert with message that pool is not accepting proposals
- Is recipient present in `alternateRegistry`?
Copy link
Contributor

Choose a reason for hiding this comment

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

We may wan to use different wording here; i.e. Is the recipient not only present (define what this means) the alternateRegistry but the user meets certain qualifications. We need to think about how to make this versatile and show the ability to use any kind of registry. Should we be forcing the alternateRegistry to be an address or maybe even a centralized API?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@codenamejason all I'm trying to articulate here is that the logic for this specific strategy should just be whether or not the address is in a registry. Would you want me write that differently in the spec? or is that something you want to solve for in the code?

Copy link
Member

@thelostone-mc thelostone-mc left a comment

Choose a reason for hiding this comment

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

Are we talking about an alternate registry which implements the registry interface / just having a gatekeeper for new applications ?
Additionally what is voting mechanism here ? Is it similar to QF ?

Each of these gatekeepers would be it's own contract, we could define a base contract and implement flavours of them but for starters -> could we pick one usecase and update the spec to reflect that

@0xZakk
Copy link
Contributor

0xZakk commented Jul 7, 2023

Put together PR #44, which can be merged into this PR

I think the goal here is just to showcase that you can write a strategy that uses another registry. Similarly, you can write a strategy that doesn't use a registry at all.

PR #44 implements a very simple example of what an alternative registry might look like, which should hopefully help us think through what this strategy will need to do.

That's all we're trying to do here, so the voting method for this allocation strategy can be something really simple (maybe just most votes wins, or something)

@nfrgosselin
Copy link
Contributor Author

Are we talking about an alternate registry which implements the registry interface / just having a gatekeeper for new applications ? Additionally what is voting mechanism here ? Is it similar to QF ?

Each of these gatekeepers would be it's own contract, we could define a base contract and implement flavours of them but for starters -> could we pick one usecase and update the spec to reflect that

@thelostone-mc are these questions still relevant given Zakk's mock and our discussion? If not, can you approve and merge

@thelostone-mc
Copy link
Member

thelostone-mc commented Jul 7, 2023

Reverting the commit to HEAD~1 and pushing the alt registry to the strategy PR

@thelostone-mc thelostone-mc merged commit 08185b0 into main Jul 7, 2023
@thelostone-mc thelostone-mc deleted the alt-registry branch July 7, 2023 16:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants