By downloading dynamic code, in effect you're running N (or some combinatorial number of) different apps.
Granted, you can/should strongly isolate them so it's infeasible for one module to interfere with another. But as always, YMMV in practice. And good luck testing them all either way.