├── .env.example ├── .gas-snapshot ├── .github └── workflows │ └── test.yml ├── .gitignore ├── .gitmodules ├── .vscode └── settings.json ├── LICENSE ├── README.md ├── addresses.json ├── audits ├── 23-05-12_zachobront.md └── 23-11-22_openzeppelin.pdf ├── foundry.toml ├── funding.json ├── remappings.txt ├── src ├── OptimismGovernor.sol ├── ProposalTypesConfigurator.sol ├── VotableSupplyOracle.sol ├── alligator │ ├── AlligatorOP.sol │ └── AlligatorProxy.sol ├── interfaces │ ├── IAlligatorOP.sol │ ├── IOptimismGovernor.sol │ ├── IProposalTypesConfigurator.sol │ ├── IRule.sol │ ├── IVotableSupplyOracle.sol │ └── IVotingToken.sol ├── lib │ └── openzeppelin │ │ └── v2 │ │ ├── GovernorCountingSimpleUpgradeableV2.sol │ │ ├── GovernorSettingsUpgradeableV2.sol │ │ ├── GovernorTimelockControlUpgradeableV2.sol │ │ ├── GovernorUpgradeableV2.sol │ │ ├── GovernorVotesQuorumFractionUpgradeableV2.sol │ │ └── GovernorVotesUpgradeableV2.sol └── modules │ ├── ApprovalVotingModule.sol │ ├── OptimisticModule.sol │ └── VotingModule.sol └── test ├── AlligatorOP.t.sol ├── ApprovalVotingModule.t.sol ├── OptimismGovernor.t.sol ├── ProposalTypesConfigurator.t.sol ├── VotableSupplyOracle.t.sol ├── fakes └── ExecutionTargetFake.sol ├── mocks ├── AlligatorOPMock.sol ├── ApprovalVotingModuleMock.sol ├── OptimismGovernorMock.sol ├── TimelockMock.sol └── TokenMock.sol └── setup └── SetupAlligatorOP.sol /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/.env.example -------------------------------------------------------------------------------- /.gas-snapshot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/.gas-snapshot -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/.gitmodules -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/README.md -------------------------------------------------------------------------------- /addresses.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/addresses.json -------------------------------------------------------------------------------- /audits/23-05-12_zachobront.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/audits/23-05-12_zachobront.md -------------------------------------------------------------------------------- /audits/23-11-22_openzeppelin.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/audits/23-11-22_openzeppelin.pdf -------------------------------------------------------------------------------- /foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/foundry.toml -------------------------------------------------------------------------------- /funding.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/funding.json -------------------------------------------------------------------------------- /remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/remappings.txt -------------------------------------------------------------------------------- /src/OptimismGovernor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/OptimismGovernor.sol -------------------------------------------------------------------------------- /src/ProposalTypesConfigurator.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/ProposalTypesConfigurator.sol -------------------------------------------------------------------------------- /src/VotableSupplyOracle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/VotableSupplyOracle.sol -------------------------------------------------------------------------------- /src/alligator/AlligatorOP.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/alligator/AlligatorOP.sol -------------------------------------------------------------------------------- /src/alligator/AlligatorProxy.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/alligator/AlligatorProxy.sol -------------------------------------------------------------------------------- /src/interfaces/IAlligatorOP.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/interfaces/IAlligatorOP.sol -------------------------------------------------------------------------------- /src/interfaces/IOptimismGovernor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/interfaces/IOptimismGovernor.sol -------------------------------------------------------------------------------- /src/interfaces/IProposalTypesConfigurator.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/interfaces/IProposalTypesConfigurator.sol -------------------------------------------------------------------------------- /src/interfaces/IRule.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/interfaces/IRule.sol -------------------------------------------------------------------------------- /src/interfaces/IVotableSupplyOracle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/interfaces/IVotableSupplyOracle.sol -------------------------------------------------------------------------------- /src/interfaces/IVotingToken.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/interfaces/IVotingToken.sol -------------------------------------------------------------------------------- /src/lib/openzeppelin/v2/GovernorCountingSimpleUpgradeableV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/lib/openzeppelin/v2/GovernorCountingSimpleUpgradeableV2.sol -------------------------------------------------------------------------------- /src/lib/openzeppelin/v2/GovernorSettingsUpgradeableV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/lib/openzeppelin/v2/GovernorSettingsUpgradeableV2.sol -------------------------------------------------------------------------------- /src/lib/openzeppelin/v2/GovernorTimelockControlUpgradeableV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/lib/openzeppelin/v2/GovernorTimelockControlUpgradeableV2.sol -------------------------------------------------------------------------------- /src/lib/openzeppelin/v2/GovernorUpgradeableV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/lib/openzeppelin/v2/GovernorUpgradeableV2.sol -------------------------------------------------------------------------------- /src/lib/openzeppelin/v2/GovernorVotesQuorumFractionUpgradeableV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/lib/openzeppelin/v2/GovernorVotesQuorumFractionUpgradeableV2.sol -------------------------------------------------------------------------------- /src/lib/openzeppelin/v2/GovernorVotesUpgradeableV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/lib/openzeppelin/v2/GovernorVotesUpgradeableV2.sol -------------------------------------------------------------------------------- /src/modules/ApprovalVotingModule.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/modules/ApprovalVotingModule.sol -------------------------------------------------------------------------------- /src/modules/OptimisticModule.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/modules/OptimisticModule.sol -------------------------------------------------------------------------------- /src/modules/VotingModule.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/src/modules/VotingModule.sol -------------------------------------------------------------------------------- /test/AlligatorOP.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/test/AlligatorOP.t.sol -------------------------------------------------------------------------------- /test/ApprovalVotingModule.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/test/ApprovalVotingModule.t.sol -------------------------------------------------------------------------------- /test/OptimismGovernor.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/test/OptimismGovernor.t.sol -------------------------------------------------------------------------------- /test/ProposalTypesConfigurator.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/test/ProposalTypesConfigurator.t.sol -------------------------------------------------------------------------------- /test/VotableSupplyOracle.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/test/VotableSupplyOracle.t.sol -------------------------------------------------------------------------------- /test/fakes/ExecutionTargetFake.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/test/fakes/ExecutionTargetFake.sol -------------------------------------------------------------------------------- /test/mocks/AlligatorOPMock.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/test/mocks/AlligatorOPMock.sol -------------------------------------------------------------------------------- /test/mocks/ApprovalVotingModuleMock.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/test/mocks/ApprovalVotingModuleMock.sol -------------------------------------------------------------------------------- /test/mocks/OptimismGovernorMock.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/test/mocks/OptimismGovernorMock.sol -------------------------------------------------------------------------------- /test/mocks/TimelockMock.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/test/mocks/TimelockMock.sol -------------------------------------------------------------------------------- /test/mocks/TokenMock.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/test/mocks/TokenMock.sol -------------------------------------------------------------------------------- /test/setup/SetupAlligatorOP.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/voteagora/optimism-governor/HEAD/test/setup/SetupAlligatorOP.sol --------------------------------------------------------------------------------