One feature that it seems many people aren’t aware of is the ability to diff against different kind of objects. Do you know how this flow compares to doing:
arc branch feature
touch foo; git add foo; git commit -m “foo”
arc branch featurePart2
touch foo2; …
arc diff feature
and so on? In my experience this seems to work well, as long as you remember to rebase before landing. However, this seems to break down if you squash commits, because the second branch no longer knows how to merge once the history of the first is squashed. Is that problem solved with your approach?