Implement the EIP-1167 standard for the deployment of on-chain polls
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 155
- Forks
- 50
- PR merge metrics
- No merged PRs in 30d
Description
The [EIP-1167](https://eips.ethereum.org/EIPS/eip-1167) is a standard that allows to minimize the deployment cost of child contracts in a factory pattern by specifying a minimal bytecode.
OpenZeppelin provides a [library](https://docs.openzeppelin.com/contracts/4.x/api/proxy#Clones) to easily implement the EIP-1167 standard which we could use to decrease the deployment cost associated to the deployment of [on-chain poll contracts](https://github.com/livepeer/protocol/blob/confluence/contracts/polling/Poll.sol) from the [PollCreator factory](https://github.com/livepeer/protocol/blob/confluence/contracts/polling/PollCreator.sol#L33-L45).
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read the EIP-1167 specification and OpenZeppelin's Clones library, then inspect contracts/polling/Poll.sol and contracts/polling/PollCreator.sol around the factory deployment. Confirm how PollCreator creates on-chain poll contracts and identify the deployment change needed to use minimal proxies. Done means new polls follow EIP-1167 while retaining the existing poll behavior and reducing deployment cost.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- solidity
- Domain
- blockchain
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100