Skip to content

Commit

Permalink
chore: some changes in introduction
Browse files Browse the repository at this point in the history
  • Loading branch information
banasa44 committed May 31, 2024
1 parent 6b5720a commit 01d1124
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions docs/advanced/psp/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,20 @@ The Plugin Setup Processor (PSP) is a crucial component of the Aragon OSx framew

### Why is the PSP Important?

Managing plugins is a delicate task that must be approached with utmost caution. The PSP ensures that any changes made to the DAO’s functionality via plugins are secure and transparent. It utilizes a prepared setup from the `PluginSetup.sol` contract to prepare the installation process. Then proceeds to the installation process granting or revoking permissions as needed to incorporate or remove functionalities within the DAO.
This method guarantees that DAO members are aware of the changes being made and can trust the process.
Managing plugins is a delicate task that must be approached with utmost caution. The PSP ensures that any changes made to the DAO’s functionality via plugins are secure and transparent. It utilizes a prepared setup from a `PluginSetup` contract to prepare the installation process. Then proceeds to apply the prepared setup granting or revoking permissions as needed to incorporate or remove functionalities within the DAO.
This two step method guarantees that DAO members are aware of the changes being made and can trust the process.

## Interactions with the PSP

### During DAO Deployment

When you deploy your DAO using the `DAOFactory.sol` contract, the PSP is utilized to install the necessary plugins. A DAO requires at least one plugin to function, and the `DAOFactory` expects you to install at least one plugin during the creation process.
When you deploy your DAO using the `DAOFactory` contract, the PSP is utilized to install the necessary plugins. A DAO requires at least one plugin to function, and the `DAOFactory` expects you to install at least one plugin during the creation process.

During this process, the `ROOT_PERMISSION_ID` is granted to the PSP to allow it to prepare and apply the installation of your requested plugin. Once the plugin is installed, the `ROOT_PERMISSION_ID` is revoked from the PSP.

### After DAO Deployment

Once your DAO is deployed, you might want to install additional plugins, or uninstall or upgrade existing ones. In these cases, the PSP comes into play again. Here, you need to prepare the plugin using the `PluginSetup` and then have an approved proposal in your DAO to apply the prepared process.
Once your DAO is deployed, you might want to install additional plugins, or uninstall or upgrade existing ones. In these cases, the PSP comes into play again. Here, you need to prepare the plugin using the `PluginSetup` or calling it from the PSP `prepareInstallation` function, and then have an approved proposal in your DAO to apply the prepared process.

:::note
For the PSP to grant or revoke permissions within your DAO, it must have the `ROOT_PERMISSION_ID` permission. Therefore, the proposal for applying the plugin installation, uninstallation, or upgrade must include a first action granting `ROOT_PERMISSION_ID` to the PSP and a final action revoking this permission from it.
Expand Down

0 comments on commit 01d1124

Please sign in to comment.