Ну
Xdist вроде как создает отдельный питонячий env на каждый запуск
а fork subproccess это не отдельный процесс питона, и если будучи в отдельном процессе allure адаптер просто складывает результаты в одну папку, и потом по ним строит отчеты
То отдельные subprocces'ы питона просто не могут этого сделать потому что инфы об этом нет
Точно по той же причине не работает с аллюром
with ThreadPoolExecutor(max_workers=2) as executor:
Скорее всего без адаптации какой либо не обойтись