While we could get away without replay of old-version WAL for in-place upgrade we'd need versioned catalog tuples, so we could read a catalog tuple in the old version, convert it on the fly and write it out in the new version when we modified it. And that's just for starters. I think it'd be great, but it's no small amount of work.