snapshot-labs / snapshot-sequencer

https://seq.snapshot.org
MIT License
25 stars 15 forks source link

feat: store space controller on space table #405

Open bonustrack opened 4 months ago

bonustrack commented 4 months ago

We should add a new field "controller" in the space table and store the current space controller there. This is to move away from ownership based on ENS domain and instead have it defined within Snapshot directly.

ChaituVR commented 4 months ago

Questions:

bonustrack commented 4 months ago

@ChaituVR

How to deal with existing controllers on ENS? we fallback to ENS text record and then owners?

I'm not sure to understand, we would store the controller in our side based on the current logic on how we determine a controller.

Imagine a situation where address A set their wallet as controller, then if they transfer their ENS name to address B, how address B can change controller?

Change of controller would happen on Snapshot, not on ENS. Address A can login and set a different controller like address B.

Both A and B will be controllers in this case?

No a space should have only 1 controller

ChaituVR commented 4 months ago

But what if address A never wants to change controller, for example I will transfer my ens chaitu.eth but I will still be in control of chaitu.eth space on snapshot. New owner of chaitu.eth name will complain that he is not control

We have seen this case before with a team where one of their team member transferred Ens name to a new team member, but he was still the controller and removing other admins 😅

Also How do we handle new spaces? We generate new random id similar to SX?