privacy-scaling-explorations / excubiae

an on-chain flexible & modular framework for implementing custom gatekeepers.
MIT License
2 stars 0 forks source link

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

Open 0xjei opened 2 weeks ago

0xjei commented 2 weeks ago

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:

ctrlc03 commented 2 weeks ago
  • 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 commented 2 weeks ago
  • 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).