As per https://github.com/jaegertracing/jaeger/issues/6460#issuecomment-2569585088, - keep v1 query service as is, operating on v1 storage - make the constructor of query service accept v2 storage only - the constructor should check if v2 storage is actually an adapter over v1, if so retrieve v1 reader and operate as usual - otherwise, apply another adapter that wraps native v2 storage into v1 reader API