-
Notifications
You must be signed in to change notification settings - Fork 19
Open
Description
Currently, we have two separate contract repositories: shutter-network/shop-contracts and shutter-network/gnosh-contracts. We should merge them into one (e.g. shutter-network/contracts) and get rid of unused contracts. In particular:
shop-contracts:KeyperSetManager,KeyperSet,KeyBroadcastandEonKeyPublishis used in both the SHOP and the GNOSH implementationInboxis used in the SHOP implementation
gnosh-contracts:KeyperSetManager,KeyperSet,KeyBroadcastandEonKeyPublishare unused and can be removedSequencerandValidatorRegistryare used in the GNOSH implementation- The interfaces
IKeyperSetManager,IKeyperSet,IKeybroadcast,IValidatorRegistryandISequencerare references to the GNOSH spec and should be preserved
- We have tests and scripts in both repositories. There is a probably a lot of overlap that we only need to preserve once. For the scripts, we should especially have two separate deploy scripts for shop and gnosh as well as a script to add a new keyper set.
- The two repos have automatically generated go bindings that are used as dependencies in rolling-shutter and other repos. They get generated in slightly different ways (see
gen/gen.goinshop-contractsandgen_bindings.shingnosh-contracts). I personally prefer the latter, but others may disagree. We should end up with either a single or two separate packages. A single is probably preferable for simplicity. - In
shop-contractsthere's some predeploy code that probably should be preserved, but I'm not entirely sure if we still need it.
Metadata
Metadata
Assignees
Labels
No labels