Have you all considered using existing features built into neurons with the Neuron Management proposal topic? It is possible to create a decentralized neuron as taught by @bjoern that doesn’t have a known private key and can only be controlled by Followees for the Neuron Management proposal topic. That topic can control all features of a neuron except dispersing the ICP in the neuron. Hence, once the ICP goes in as a stake, then it can never come out (unless it is a non-profit neuron). However, the Neuron Management proposal topic can be used to spawn child neurons from maturity of the parent neuron and assign principal IDs to the child neuron. If an SNS intends to use maturity to fund ongoing development, then perhaps an 8 year neuron is sufficient to meet the needs.
Part of the plans to create an SNS could be to either elect or propose a slate of up to 15 Followees for the Neuron Management proposal topic. Hence, if funding is requested from this neuron, then it would be up to the Followees of the Neuron Management proposal topic to Adopt or Reject the proposal. An entire SNS community could not vote directly on a proposal to spawn a neuron from maturity of the decentralized neuron, but they could elect representatives (who are doxed and background checked) to perform this task.
Also, from an NNS voting perspective, @christian has provided an example of how to enable automatic voting of a decentralized neuron based on canister control from a hotkey configuration. The Taggr neuron votes on NNS proposals based on the results of polls conducted in Taggr. The Taggr canister is a hotkey for the Taggr neuron, which enables the canister to vote on proposals. Here is the discussion thread from when that idea was developed. I believe he has already made the canister code for triggering the votes open source.
In the Taggr case, Christian essentially black holed control of the Taggr neuron by removing all Followees from the Neuron Management proposal topic after it was configured. That was done because the intent of the Taggr neuron is only voting and there is no desire the change that configuration in the future ever. In fact, if ICP was ever deposited into the Taggr neuron, then maturity would build forever and could never be extracted since there are no Followees for the Neuron Management proposal topic and there is no known private key to control the neuron.
In the case of an SNS, I think the best configuration that could be achieved for decentralization would be to form the neuron without a known private key, assign up to 15 Followees to the Neuron Management proposal topic who are elected by the SNS community, configure Followees for each NNS proposal topic, add a canister hotkey for controlling voting on NNS proposals, set the neuron to 8 year dissolve delay, and then stake all or a portion of the SNS treasury. The SNS team could propose a fraction of the token swap that should be allocated to an account for easy access and a fraction that should be allocated to this long term treasury neuron. The neuron could be set up this way before the SNS token swap and funds could be automatically deposited into the neuron based on the proposed allocation.
This doesn’t seem like it would take much development because all the features of the Neuron Management proposal topic, spawning neurons from maturity, and hotkey control of neuron voting already exist with all neurons. The only development that would be required is integrating it into the SNS design in a trustless way. This type of approach could also be used with existing SNSs, but there are a few trust requirements in getting the ICP form the current SNS treasury to an ICP account and then to a decentralized neuron. If an SNS team is transparent of their intent with their community, then perhaps they could convince them of this plan in advance so they don’t receive a lot of community backlash during the transition.
Anyway, it’s just an idea. It could be that SNS teams don’t believe that their long term development efforts can survive off maturity alone.