I tried to use unison for serious production work a few years ago, and it fell short. It would fail or become incredibly slow with large (but not huge) amounts of data. A pity because the concept is great. I wonder if it has improved since.
I played with borg some in the early days and was unimpressed with some of the methodology and code quality displayed on public forums like GitHub. This is kind of archival work MUST be correct and carefully designed due to its sensitive nature. I hope I'm not giving the project an unfair shake here, but I checked it again recently and the first several lines of the GitHub page list 3-4 fairly recent versions that have caveats around data corruption and the like ...
This is not really isolated to borg, so I don't want to pick on them too much (plz shield your eyes in the direction of rclone...), but calling it the "holy grail" is a bit rich IMO. This kind of stuff is simply not industrial grade software.
Borg has a lot going for it, but I'm hesitant to call something a holy grail or one true way if it can't do compact diffs. Especially when it needs active server software, which makes pruning much easier.