This repository contains the solution to task given by push protocol for the role of smart contract intern.
Here are the challeng requirements
1. Write a Solidity Smart Contract with the following capabilities:
It should be an Upgradeable Smart Contract with ERC-1967 Transparent Upgradeable Proxy Pattern.
The smart contract should be capable of creating new channels from the contract itself, using the Push Core Contract on Goerli Testnet.
And lastly, the smart contract should also include a feature to emit out on-chain notifications using Push Communicator Contract on the Goerli testnet.
Solution
The contract for this task can be found inside the contracts folder. File name is Push.sol.
2. Conduct a thorough review and document any Gas Optimizations (or security vulnerabilities) that you might find in the Push Core Smart Contract given below:
Push Core Contract to be reviewed can be found HERE.
You can use already existing tools to find out optimization or security issues in the given smart contract.
Document the issues found in an adequate manner.
Optional: Feel free to provide recommendations on how to best fix those issues, according to you.