Hey Jules, I've run into this assert in ~AudioUnitPluginInstance and I'm not quite understanding it's purpose. I load my plugins on the message thread but delete them on another thread, so this assert can happen if I'm instantiating plugin "A" while I attempt to deinstantiate plugin "B". I've search around for some info on Audio Unit lifetimes and if one should or shouldn't deallocate them on a separate thread but haven't landed on anything concrete. That said the assert looks like it was designed to catch some other kind of issue.
Can you provide some info on what it's intended to catch?