Giveth integration in EVMcrispr

Proposal Information

Proposal description:
A lot of things has happened to EVMcrispr since we received the Giveth sponsorship 4 months ago:

  • EVMcrispr adoption has grown very fast. It is now being recommended by the Aragon support team as the tool of reference to interact with Aragon DAOs. And they approved a grant to make EVMcrispr even more fantastic!
  • The new GIVbacks Relayer is released, and now it is way easier by the nrGIV DAO to approve the GIVbacks every round. We modified EVMcrispr to convert strings to bytes parameters, so we can write IPFS hashes directly, and EVMcrispr takes care of them.
  • The honeyswap.org domain was hijacked, and we used EVMcrispr to create atomic transactions to give back the funds to the damnified addresses. It was way easier create a vote with all the transactions than send them one by one, and multisender does not support using different tokens in the same transaction.

EVMcrispr has proven very useful with the current state, and we couldn’t be more excited about what is coming next. We are extending the language so anyone will be able to define their own commands, and we would like giveth to be one of them.

For those who are not familiarized with EVMcrispr, currently you can use a predefined set of commands to write a script such as:

connect nrGIV token-manager voting
act agent $GIVfarm claim()
act agent @token(GIV):tokenManager wrap(uint256) 100e18

This creates a vote to the nrGIV DAO to claim the rewards from the GIVfarm and re-stake them again. We are about to extend the language with the introduction of customized commands. In few months you will be able to do:

load giveth
load aragon1
aragon1 connect nrGIV token-manager voting (
  act agent $unipool claim()
  act agent @token(GIV):tokenManager wrap(uint256) 50e18
  giveth donate giveth-magical-terrace @token(GIV) 50e18
)

Which means that you will be able to claim the rewards, re-stake half of them, and donate the rest to your favorite Giveth project (and be eligible to the GIVbacks program without having to enter the website!).

Proposal Rationale

We know that this feature may not look a priority for the future of giving, the people who uses EVMcrispr nowadays is very few, so funding it supposes a cost to Giveth with a very few return. Probably as you, we do not expect this feature to be used very much in the near future.

The reason why we think Giveth community will still be interested in funding this proposal is because after all it is a community of pioneers. We think that like many other occasions in the past (with MiniMe token, Conviction Voting…), Giveth will lead with the torch to undiscovered terrains. EVMcrispr has a long way to go connecting blockchain protocols with an easy-to-write language designed to create powerful operations.

If you invented a new language today, you probably would select “give” (the act of giving :hugs:) as one of the first words to be included in it. For EVMcrispr the giveth command will be one of these first-generation words that will allow people to give within the script.

Expected duration or delivery date (if applicable):

4 months after the proposal passes.

Team Information (For Funding Proposals)

Names, usernames, and/or relevant social links for team members (Twitter, Github, Giveth Forum, etc.):

@sem - sembrestels at github
@elessar - pjcolombo at github

Skills and previous experience in related or similar work:

We are the developer team behind EVMcrispr, and we work very close with the 1hive gardens swarm as well. Sem is a technical advisor of giveth (helping with the design of the GIVback relayer), and main developer of the GIVpower smart contracts.

Funding Information (For Funding Proposals)

Amount of GIV requested:

50,000 GIV (~$5,000 in the time of doing the proposal).

Ethereum address where funds shall be transferred:

0x8790B75CF2bd36A2502a3e48A24338D8288f2F15 (Blossom Labs :cherry_blossom: Safe)

More detailed description of how funds will be handled and used:

The GIV will be sold in honeyswap in order to pay the development of this feature and other expenses the team has.

5 Likes

Thanks for all your efforts, we love the EVMcrispr. I support this :slight_smile:

2 Likes

Used EVM Crisper today… this has my support.

2 Likes

I created the proposal: Gardens.

On top of the “donate” command, we will include the “givbacks-exec” command to facilitate the execution of the gitback batches. It will be based on the EVMcrispr fork @mitch and me used to execute the retroactive givbacks. This will be the syntax:

giveth givbacks-exec <ipfsHash>
2 Likes

Such an amazing tool, I have used it so many times and support it. As I see, Giveth has benefited from this tool enough to support it.

1 Like

I completely love this proposal. Sorry it took me this long to read it. EvmCrispr is super useful! The new GIVbacks relayer is so great in reducing voting overhead, and so cool so learn that it was actually used to reimburse funds from the honeyswap hack (I didn’t know that!).

Feels like an honour to have giveth used as a command to give within the script.

We use this all the time, and I think other DAOS will as well in the future. Happy to vote in favour of leading blockchain protocols into unchartered terrains. You’ve got my support in gardens.

1 Like

Preparing for EVMcrispr v0.10.0

After successfully releasing six versions of EVMcrispr sponsored by the Aragon Network DAO, we are going to release another version funded with the GIV of the GIVgarden proposal.

The EVMcrispr v0.10.0 release will include what we promised, plus a new frontend that makes it easy to remember and share scripts between people.

As usual, we ask the community that sponsors the release for the version code name. How should we name it this time?

  • Collective wisdom - Sharing scripts with a short link will make it easier for people to spread knowledge on performing complex tasks and evolving the code over time.
  • Powerful artifacts - Harnessing your most useful scripts and having them at hand will do wonders when you travel across the web3 landscapes.
  • Wonderful compilation - Collecting useful script one link at a time will be a new amusement for some of us.

0 voters

We plan to release the new version by the end of the month. We also plan to distribute the GIVbacks of the next round using the new initiate-givbacks and finalize-givbacks commands, making it safer to allocate them. So stay tuned for what is coming!

6 Likes

EVMcrispr v0.10.0

We released EVMcrispr v0.10.0, “collective wisdom,” with a new UI, a Script Library, and a way to share scripts with IPFS links. You can read the full release notes here, although in this post we will focus on the new Giveth module commands.

They are three: donate, initiate-givbacks, and finalize-givbacks.

donate <projectSlug> <amount> <token>

We can use the donate command to send any token to any project in Giveth on both the mainnet and gnosis chains.

We deployed a GivethDonationRelayer that will keep track of the donations made through EVMcrispr, so in the future, they may receive givbacks if the community finds it fitting.

You can see all the donations in the events of the contract deployed in each chain: mainnet and gnosis.

Example:

switch gnosis
set $token.tokenlist https://tokens.honeyswap.org
load giveth
exec @token(WXDAI) deposit() --value 60e18
giveth:donate giveth-house 60e18 @token(WXDAI)

These scripts can be shared easily with the new IPFS links:

https://evmcrispr.com/#/terminal/QmY5UGuZo2pAwWoSoGMo27LeRyigNkxHTWAvy2eskYe1mK

We expect Aragon DAOs and Gnosis Safes to use this new donate command, as sometimes it is difficult for those to use the Giveth frontend.

initiate-givbacks <ipfsHash> [--relayer <relayerAddr>]

This command will create a vote on the nrGIV DAO to distribute the current round givbacks through the GIVbacks relayer (code). In the IPFS hash there is the JSON with the addresses and amounts that will receive the givbacks.

Example using retroactive givbacks information:

load giveth
giveth initiate-givbacks QmYYpntQPV3CSeCGKUZSYK2ET6czvrwqtDQdzopoqUwws1

finalize-givbacks <ipfsHash> [--relayer <relayerAddr>]

This command will execute the batch of token distributions once the nrGIV DAO has executed the vote. The arguments are the same as in the previous command.

Example:

load giveth
giveth finalize-givbacks QmYYpntQPV3CSeCGKUZSYK2ET6czvrwqtDQdzopoqUwws1

The new module is already being used for easing the givbacks distribution process.

We are glad to contribute to the Giveth ecosystem and thankful for the support received from the DAO. Thank you all for sponsoring the “collective wisdom” release.

1 Like