I'm trying out the new staging area feature and I'm immediately hitting a problem. Although both my staging and my actual repository sit on the same server and can use the same credentials I use HTTPS access for my local repo and SSH from Phabricator installation. This means that the staging Url comes through as git@...., and that tries to use my public key to authenticate on the server. Since I don't have that configured, this will fail causing me to abort arc diffing altogether. Since both HTTPS and SSH access if allowed on our server it's pretty easy to get into this kind of situation. It's even worse if the staging and the actual repo are using 2 different servers - the likelihood of the user hitting this issue is then higher.
Unless I misunderstand the intended use for this, there's no reason the push to the staging server has to be authenticated as the user who is submitting the diff. It would make sense to provide a configurable credential to be used for staging that arc would then use to authenticate and push changes to the server.