No track is created; no routing changes. No selected track -> bank
import proceeds, instrument placement is refused with a console message
explaining why. createTrackWithInstrument removed (was sole caller).
Remove both ingestAssignActiveInstance() calls from ingestDroppedFiles.
New samples still land in the bank, bump the generation, and persist —
but the drop no longer force-selects on any live instance. Dedup branch
simplified; stale comments corrected. ingestAssignActiveInstance stays
defined for the main.cpp path.
Repurpose INGEST_IMPORT_MEDIA_EXPLORER (id unchanged) to stand up a
fresh ReaSampler 9000 on a new named track pre-loaded with the imported
sound, instead of force-selecting on the active instance. One undo point.
Extension stamps a monotonic bank_generation counter, bumped at content
mutations; the VST3 instrument polls it off-thread on an editor timer and
consumes assignment requests, refreshing playback hands-free.
Non-WAV sources decode via PCM_source::GetSamples and land as canonical 32f
RIFF/WAVE; hash taken post-conversion so re-imports dedup. Undo block covers
bank mutation + assign_request atomically. Overflow guards + adversarial tests.