> You definitely can't do it with a quadcopter, which doesn't have anywhere near the precision reaction capability to counteract rifle recoil.
I think you're overstating the difficulty here. There's three things a drone needs to do:
1. Provide a stable/stabilized platform (for sensors and effectors)
2. Respond to recoil in such a way to make the point-of-impact consistent
3. Not fall out of the sky in response to recoil
I think 1 is demonstrated today with drones flying around 4k/8k movie cameras - a lot of that might be the mount, but you could put an AR-15 in that mount too. 2 is presumably easy as well - just make sure that the drone is in the same physical orientation before each shot as in 'training'. 3 is trivially solved - if your drone is robust enough to withstand the recoil, just let the computer autolevel the drone in whatever new location it's found itself in. If this costs altitude, make sure to fire from farther up.