So you are saying there are two cases which could cause `founder` to be `nil` at this point:

1. The proposal was previously deactivated, in which case `old_role` is `nil`.
2. All the members of the cluster got changed, in which case `old_nodes` is `[]` (I would have expected it to contain a list of the previous members of the cluster, but I'll trust that you're right)

and AFAICS "there was nothing in common with the old role" refers to the second case, and "we still want to keep the same founder in case proposal was deactivated" refers to the first case.

Right?