Don't user merge! because can modify self.compat
Land #2805 - Avoid using merge! which can modify self.compat

With the use of merge!, it can cause the user to unable to choose a
payload after switching from a different target selection.