Manage an SPS
Overview
SNSs are protocol-provided DAOs on BIG that are to some extent maintained by the NNS community, who for example approve new upgrades of SPS canister code. This eliminates much of the maintenance burden from the SPS communities. However, there are still some maintenance tasks that have to be performed by an SPS community, such as deciding and voting on when an SPS should be upgraded to a new version, adjusting the SPS parameters when needed, and making sure that the SPS canisters do not run out of cycles.
SPS community
Once an SPS is launched, neither the dapp that the SPS controls, nor the SPS canisters are under the control of a singe entity such as a developer. This means that the dapp and to the SPS canisters, as well as which changes can be made to them, are controlled by the SPS community. Anyone with an SPS neuron can make a proposal to suggest a change in the dapp or to modify a parameter in the SPS governance and, if the majority agrees, the proposal is automatically executed on-chain. For this reason, the following pages are not only relevant for developers but for any member of an SPS community who would like to actively help managing the SPS.
Managing an SPS
This page introduces a few aspects that are relevant for managing an SPS.
- As every piece of software, after an SPS is launched is has to be maintained. This includes ensuring that the SPS canisters are running the latest version and that they have enough cycles to continue operating. You can find more information on cycle management on this page.
It is important to especially emphasize the following:
The SPS communities are responsible for individually topping up the cycles of all SPS canisters as well as all dapp canisters that are controlled by the SPS. Special care must be taken that cycles are also monitored for canisters that are automatically created. In particular, this includes the archive canisters that are automatically spawned by the ledger canister. If the archive canisters are not provided with sufficient cycles, the ledger block history may be lost.
- While SNSs that are provided as a system function can only be upgraded to canister versions approved by the NNS, each SPS community can configure their SPS according to their needs. Most chosen configurations can also be adjusted over time, for example to adopt to new situations or to experiment with different governance and tokenomic models. Therefore, managing an SPS also means that the community should regularly consider and adjust these configurations, which are defined by the SPS's nervous system parameters.
An SPS community needs proposals, some of which are specific to a given dapp, to govern the DAO with its properties and the dapp. This page provides some guidelines regarding how proposals can be used and how an SPS community can define their own kinds of proposals.
A dapp might have an associated The asset canister that stores and retrieves static assets from a canister deployed on BIG. Once a dapp is under SPS DAO control, the SPS DAO must also be able to control the associated asset canister. More details on how this works can be found on this page.