If I read the code correctly, when Bitcoin Core receives a msgalert, it checks the signature, and if that fails, increases the misbehaving score for the peer.
If another full node author/team wanted to create their own keypair to send their own msgalerts across the network, either Bitcoin Core would have to import the public key or at least not mark it as misbehaving.
My initial thought would be Bitcoin Core add a configuration option to specify additional pubkeys to trust in alert messages <b>AND</b> drop the misbehaving peer code and just silently discard it if the signature doesn't match any of the pubkeys.
This would stop other full node implementations from getting banned for sending msgalerts signed by unknown keys.
Any thoughts on this?