I’m honestly surprised at how little push back this proposal is receiving, especially considering how aware everyone is of the potential for controversy.
We would be using the smart node as a back door to force updated smart contracts on our node operators. That is a very significant change of the relationship between the protocol and its operators. We’ve been telling our operators that nobody can force them to exit and the proof is on-chain, ultimately guaranteed by the first principles of Ethereum. Whether that was a wise decision or not is up for debate, but with this proposal we would not only go back on that promise, we would be doing so in a way that comes fairly close to essentially putting malware on the nodes of our operators. I’m choosing the word “malware” because we all know that no matter how public this process would be, a large proportion of our node operators would remain unaware and would unknowingly install software that could ultimately close their node for whatever reason the majority of RPL-votes chooses, going back on what they were promised when they created it. And no, I don’t think that a prerequisite for being a node operator is to stay current on the affairs of the protocol. The whole point of this protocol was to engage home stakers who don’t have the time or resources to make this their livelihood.
I also don’t agree that this would only affect node operators neglecting their duties. As the OP says, most of those nodes aren’t attesting at all and it stands to reason that they don’t update their smart node and thus couldn’t be reached through this mechanism. It is far more likely that Saturn 1 doesn’t quite go as originally planned and the community decides to force migration to megapools by closing old nodes. That may seem unlikely now, but we’re already in a fairly bad spot and we may just become too desperate to ignore this back door.
That said, I’m not entirely against this. Developing the smart node uses protocol resources and the protocol is entirely within its rights to use its resources for the benefit of the protocol. I would just urge everyone to do this without any semblance of deception. Instead of hiding this back door in a normal smart node update, make it part of a new version of the smart node and make it impossible to install without being very clearly told during installation that this version will force smart contract updates and that this entails a possible forced exit. If a node operator does not agree with that change they can continue using the old version, which would no longer receive significant updates.
I’ll tell you what I will do if this goes through: No way in hell will I install that update and I suspect neither will most of you. I will choose myself when to exit my minipools, thank you.