Skip to content

Commit

Permalink
update readme
Browse files Browse the repository at this point in the history
  • Loading branch information
dmfxyz committed Jun 26, 2022
1 parent 9763e1c commit 95f2a8d
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 3 deletions.
17 changes: 15 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,17 @@
## SuperSig
Supersig is a multisig written in vyper. It's intended to be used in coordination with the [supersig frontend](https://github.com/relyt29/supersig-frontend)

At a high level, Supersig works like this:
1. You deploy `supersig` with a list of owners and a minimum number of approvals
2. Someone `propose`s a proposal
- a proposal is very simple. It consists of an id, which is a number, and a proposal hash.
- a proposal hash is a 32 bytes. It should be the keccak256 of a target address, some calldata, and an ethereum value.
3. Owners call `approve` on a proposal ID
4. Someone `executes` the proposal, providing the matching target address, calldata, and eth value. The proposal only executes if the hash of the execution arguments matches the proposal hash.

The intent of Supersig is to keep all approval and proposal actions on-chain, without revealing the intent of the proposal until it's executed.

Supersig was written as part of the ETHNYC 2022 Hackathon. It uses Apeworx, Vyper, Pokt, and Privy who were among the awesome sponsors of the event.

### Setup
Recommend using [miniconda](https://docs.conda.io/en/latest/miniconda.html)
Expand Down Expand Up @@ -30,8 +43,8 @@ tests/test_supersig.py .. [100%]
============================== 2 passed in 2.46s ==============================
```

## Deploying to Ropsten
(assumes you have a wallet with some Ropsten eth)
## Deploying to Testnet
(assumes you have a wallet with some Testnet eth)
1. Import the wallet to ape and give it the `testnet`
```sh
$> (supersig) ape accounts import testnet
Expand Down
2 changes: 1 addition & 1 deletion scripts/deploy_testnet.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from ape import accounts, project

def deploy():
deployer = accounts.load("ropsten")
deployer = accounts.load("testnet")
signer1, signer2, signer3 = accounts.load('signer1').address, accounts.load('signer2').address, accounts.load('signer3').address
return deployer.deploy(project.supersig, [signer1, signer2, signer3], 3)

Expand Down

0 comments on commit 95f2a8d

Please sign in to comment.