Architecture
The Forge Proposal Simulator (FPS) offers a versatile solution for protocols with trusted actors to create and validate governance proposals.
Last updated
The Forge Proposal Simulator (FPS) offers a versatile solution for protocols with trusted actors to create and validate governance proposals.
Last updated
The diagram illustrates the architecture of the Forge Proposal Simulator. It is composed of various components that interact with each other to simulate, execute, and test governance proposals.
At its core, the FPS features a Proposal.sol contract that defines functions that can be overridden to adapt to specific governance architectures. The run
function serves as the entry point to execute a proposal using the forge script
.
FPS supports different Governance types (e.g., Timelock, Multisig, Governor Bravo, OZ Governor) through proposal contract types inheriting from Proposal.sol, customizing their functions to unique governance requirements. New proposal types can be included to support different governance contracts.
Protocols using FPS must create their own Proposal Specific Contracts, conforming to FPS standards. These contracts override functions relevant to the particular proposal, such as deploy()
and preBuildMock()
for proposals involving new contract deployments. For more details, refer to proposal functions.