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

Demonstrate the possibility to reuse already deployed gatekeepers state & criteria #6

Open
0xjei opened this issue Oct 21, 2024 · 2 comments
Assignees
Labels
test A code to test (un)expected behaviours
Milestone

Comments

@0xjei
Copy link
Member

0xjei commented Oct 21, 2024

This is something mentioned by @privacy-scaling-explorations/maci team as a feature which is missing in their gatekeeper design. However, the current design of Excubiae should make this possible (should, because it has not been tested yet).

This is strictly relevant for the following:

  • Anyone should be able to create a new gatekeeper based on the state of an already deployed (and used) gatekeeper.
  • Anyone should be able to create a new gatekeeper using the same constraint logic as an already deployed gatekeeper.
@0xjei 0xjei self-assigned this Oct 21, 2024
@0xjei 0xjei added this to the [MVP-1] Heart milestone Oct 21, 2024
@0xjei 0xjei added the test A code to test (un)expected behaviours label Oct 21, 2024
@ctrlc03
Copy link

ctrlc03 commented Oct 21, 2024

  • Anyone should be able to create a new gatekeeper based on the state of an already deployed (and used) gatekeeper.

how would this work with double-checks? or is this more of a: only pass second gatekeeper if you passed the first and you satisfy the second criteria too?

@0xjei
Copy link
Member Author

0xjei commented Oct 21, 2024

  • Anyone should be able to create a new gatekeeper based on the state of an already deployed (and used) gatekeeper.

how would this work with double-checks? or is this more of a: only pass second gatekeeper if you passed the first and you satisfy the second criteria too?

The following does not yet involve double checks (delayed to ms2), but for them you should potentially be able to satisfy expressions of checks (checkGateA && checkGateB || checkGateC). So if A, B or C is an already passed gatekeeper and you want to create a new gatekeeper based on it's state, you need to add a check (criteria) about it in your pass logic, like !gateA.alreadyPassed(address).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
test A code to test (un)expected behaviours
Projects
None yet
Development

No branches or pull requests

2 participants