Description
Contributors can pick up of the issues listed here (all are good first issues, great to get started):
-
The Orchestrator was created to disregard failed transactions. However it was patched to revert if one of the listed transactions fail (to prevent a gas underprice attack). Update the inline code documentation to reflect the patched change].
-
Replace
externalCall
with.call
-
The orchestrator imports the entire
UFragmentsPolicy.sol
. The typical way to address this is to just import the relevant interface, instead of importing the full contract. This helps reduce the deployed contract size. -
Use the revert message to indicate the index of the external call transaction which failed
-
Use non upgradable version of
Ownable
in The Orchestrator contract. -
The current Orchestrator contract uses require(msg.sender == tx.origin) to prevent contracts from calling rebase. But tx.origin may be deprecated in the future. Implement one of these alternate mechanisms described here.