effectai / effect-dao

Dashboard to interact with Effect Network and EffectDAO
MIT License
9 stars 8 forks source link

Automate/Create CI/CD pipeline to create tx for new Dao cycle #169

Open djmbritt opened 1 year ago

djmbritt commented 1 year ago

Just like the pancake swap fee calculator, create a CI pipeline to create a transaction to be signed by guardians to instantiate the new cycle.

This should be some kind of server that can run on a cron job so that it can run publish a new cycle when the old one finishes.

This needs to be some kind of node server that can use the eosjs library so that we can create the transactions and publish them. Afterward, a notification can be sent to discord, where the high guards can then sign the transaction to initiate the next cycle.

@jeisses Needs to be consulted to see what the steps are, what the eosio actions are that need to be called. We probably also have to expand the eosio account that is used with more permissions from the high guards, so they have the proper permissions to execute the needed actions.

djmbritt commented 1 year ago

DAO: Automate the setup and configuration of new cycles

As the Guardians we want new DAO cycles to start transparently and semi-automated.

Background

At the moment starting a new cycle requires the following steps:

  1. Transfer funds from treasury.efx dashboard
  2. Create a new cycle entry in daoproposals with the correct date and budget.
  3. Recycle: calculate the remaining funds of the budget; send 30% to feepool.efx and 70% back to treasury.efx
  4. Call processcycle: this tallies the votes for the cycle
  5. Call updatecycle: this increments the DAO's current active cycle
  6. For each passed proposal call executeprop (which is a High Guard action)

These steps take time and are complicated to execute, which makes operating the DAO harder that needs to be (which is why Jesse has to do it each time).

Discussion

I think that steps 2, 3, 4, and 5 can all be automated in a single transaction.

Step 6 can later be performed on the High Guard dashboard.

Recycle strategy

This can be stored on the blockchain where you have a list of accounts and a % of the left over funds to receive:

{"feepool.efx": 0.3, "treasury.efx": 0.7}

Interface