Only the number of shuffles is linear. Shuffling an array and marking/deleting correctly-placed elements still take linear time even with a “placement oracle.” It’s at best O(n^2) so the algorithm still wouldn’t be a good sorting algorithm.
It’s like doing selection sort, except we’re selecting a random set of elements (from that poisson distribution) instead of the smallest one.
How does this compare with GumTree? It’s weird that the page doesn’t even mention existing state-of-the-art tools for this task.
edit: I’ve compared GumTree and difftastic myself while working on a project this past week. Difftastic is harder to use programatically (the JSON format is unstable and leaves something to be desired) but other than that it’s miles and miles better.