JoinColony / colonyNetwork

Colony Network smart contracts
https://colony.io/
GNU General Public License v3.0
436 stars 106 forks source link

Archiving domains #1279

Closed kronosapiens closed 3 weeks ago

kronosapiens commented 3 months ago

This is functionality that we've had, and taken away, and are re-implementing now:

Add deprecateDomain: https://github.com/JoinColony/colonyNetwork/pull/983 Add support for local skills: https://github.com/JoinColony/colonyNetwork/pull/986 Remove global skills: https://github.com/JoinColony/colonyNetwork/pull/1173

Also this comment: https://github.com/JoinColony/colonyNetwork/pull/986/commits/305266fa82c6cf85da8dec937979b25ae046f868#r740362477

This history has led us into a strange state where each change was path-dependent on the change before. We initially implemented domain deprecation before we had local skills; we tried to update it to use local skills once we had them, which ultimately failed due to unforeseen interactions between colonies, and then went ahead and removed global skills, the feature which required the functionality which made local skill deprecation impossible.

Ultimately, we have sort of come full-circle where we can now implement local skill deprecation as initially envisioned, as there is no longer a need to store any deprecation information on the network itself. However, deploying that change presents some small challenges, namely any currently-deprecated skills will become undeprecated, as we will move from network-stored deprecation to colony-stored deprecation, which necessarily has not been set yet.

Speaking to @arrenv, it is unlikely this change will effect many users, if any, as very few users are still active on Gnosis chain, and it is likely that only a small handful of users ever used this functionality in the first place (although this is hard to verify, as the events are recorded on the individual colonies).