This comment in the Session pallet states:
/// Move on to next session. Register new validator set and session keys. Changes to the
/// validator set have a session of delay to take effect. This allows for equivocation
/// punishment after a fork.
We are developing a custom Validator selection mechanic, but when we want to change the Validator set using the Session pallet, we must perform two session rotations in order to get the new set to take effect.
Are we missing something with respect to the implementation of the Session pallet that would make this necessity clearer? It would be good to get an ELI5 of the reason for the two-Session requirement.