Note that I had to disable the pool "search mode" when loading the same sample over a range of MIDI notes, otherwise updating the start/end positions would be mirrored on every sample.
auto pool = sampler->getSampleMap()->getCurrentSamplePool();
jassert(pool);
pool->setDeactivatePoolSearch(true);
I believe this is why this pool mode exists, @Christoph-Hart, i.e.: to allow each duplicate sample entry to have its own properties?
E.