From a strategic perspective, you should seek to keep the same AP type in the same roaming domain. Why?
- Roaming could, might be different between different AP models, even with the same phy. (different receive sensitivity and spatial stream capability)
- The more AP exceptions you make in your infrastructure, the harder it will be to solve zero-day problems. It will also be harder to replicate zero-day problems if the problem is roaming from one AP type to another
- If there is a version of code that leaves a single type of AP behind, you will have to physically identify APs that are possibly hidden, to make that transition.
It would be very easy to say, sure you can just mix and match those APs because they have the same phy type. If you don't care about the strategic considerations above, I am sure it would be fine.