reduce indent in multiline pipelines
diffs must be done from merge-base to head

git-diff-tree(1) seems oblivious to the ancestry chain (if any).
git-mantle called with arguments in the wrong order would show
inverse diffstat (and there'd be no log):

  % git mantle rn/feature up/master
    repo = ../upstream
    head = 85b915e up/master
    base = ab984c9 rn/feature

     .gitignore | 1 -
     README     | 2 +-
     2 files changed, 1 insertion(+), 2 deletions(-)

  % git diff --stat=60 HEAD HEAD\^
   .gitignore            |   5 -
   GNUmakefile           |  68 -------------
   README.rest           | 142 ---------------------------
   git-mantle.1          | 153 ------------------------------
   git-mantle.zsh        | 113 ----------------------
   tests/.gitconfig      |   3 -
   tests/0000.t          |  59 ------------
   tests/0100.t          |  61 ------------
   tests/0200.t          |  60 ------------
   tests/0300.t          |  79 ---------------
   tests/checkout.bundle | Bin 1075 -> 0 bytes
   tests/seed.bundle     | Bin 492 -> 0 bytes
   tests/tools.sh        |  68 -------------
   13 files changed, 811 deletions(-)
  % git diff --stat=60 $(git merge-base HEAD HEAD\^) HEAD\^
  %

and the two branches need some common ancestry for the pull request
to make sense anyway.

btw, to make it more predictable, the refnames given in $@ are used
only in the output, the implementation uses the corresponding hashes
to avoid any ambiguities and races.
query-git less shifty
README: example contrasts with git-request-pull(1)
commit list bulleted with "$seqno/$seqlen"