Короче как всегда оказалось, что в какой-нибудь версии БАС что-нибудь работает некорректно. В данном случае оказалось что в 23.2 верный XPATH просто не работал.
XPATH>(//[@class='PartHeader'])[3]/../following-sibling::tr[position()<= count((//[@class='PartHeader'])[3]/../following-sibling::tr) - count((//*[@class='PartHeader'])[4]/../following-sibling::tr)]/td/a
А вот в 24 с ним всё норм
Если вдруг кто столкнется с необходимостью поиска элементов между двумя другими можете пользоваться этой схемой.
В примере мы выделяем tr следующие за [@class='PartHeader'])[3]/../ в количестве tr следующих за [@class='PartHeader'])[3]/../ МИНУС количество tr следующие за [@class='PartHeader'])[4]/../

вот в хроме по xpath 60 элементов показывает, как мне перебор по ним сделать, как правильно [5] вписать, я это никак понять не могу, если он показывает 60 элементов, значит по ним можно через xpath запросом как-то перебор сделать, но у меня не получается никак и я не могу понять почему и где ошибка, что //*[contains(@class,'MosiacAsset-module__thumb')]/@src[5] не срабатывает