I ran into an issue where an arc diff had my recent commits but not the full history. To reproduce this issue, do the following:
git checkout -b branch1 touch foo git add . git commit -m 'foo' git checkout -b branch2 git checkout branch1 touch bar git add . git commit -m 'bar' arc diff --preview
Expected result: the arc diff includes both 'foo' and 'bar'.
Actual result: the arc diff only includes bar, not foo.
It looks like, when branch2 is created (as a sub-branch of branch1), arc diff thinks that it only needs to diff the HEAD against the commit when branch2 was created rather than against master.
This happens using the most recent versions of arcanist and libphutil:
arcanist eb036465dc9b2f83cf302f4cb92c322197b4221b (13 Apr 2015)
libphutil aaee4009e20db8eea94591117788be57c133eae5 (13 Apr 2015)