Permission denied when arc landing

Hey there Phabricator team!

I’m coming back with an issue that I can’t explain, and that seems to make no sense to me. I am onboarding a contributor who uses Windows, and arc seems to be very unhappy about it. But the issue is that he seems unable to run arc land.

The git process fails with a message that reads permission denied (publickey), which seems to imply that the underlying git process is failing to run the task.

Reproduction Instructions
We started by setting up arcanist like normal. Added the conduit key, and then started working. Everything seemed to be working perfectly normal:

  1. We were able to git clone the project without issue
  2. We did arc diff a change. Which worked as expected
  3. When we tried to arc land the change, arc would crash with permission denied (publickey) and a stack trace.

We gave up trying after a while, because my contributor had errands to run. So I thought I’d come here to see if anyone has input for me. Could it be because he has a passphrase on that private key which it can’t show the prompt for?

Phabricator/Arcanist Version
Latest version according to arc upgrade. Sorry I didn’t get around to ask the version number yesterday.

Run arc land --trace to see details about what exactly is happening.

permission denied (publickey) looks like ssh auth issue.

Trace fails on

[2021-04-28 20:46:20] EXCEPTION: (CommandException) Command failed with error #128!
git ls-remote --refs origin refs/heads/*

Running git ls-remote --refs origin refs/heads/* directly requires my passphrase. After removing my passphrase, arc land works fine. It’s likely as CSharp said, the land is failing because it can’t take user input for the passphrase.