Task T20 is created in Maniphest and is currently open.
$ arc close T20 Exception ERR-INVALID-PARAMETER: Status set to invalid value. (Run with --trace for a full exception trace.)
$ arc close T20 -s resolved Exception ERR-INVALID-PARAMETER: Status set to invalid value. (Run with --trace for a full exception trace.)
I attempted to debug it a little bit and found that in ArcanistCloseWorkflow it matches resolved to 1 and sends that to the server.
In ConduitAPI_maniphest_Method it attempts to get a status of 1 but that's not found in the status map that is returned:
array ( 'open' => 'Open', 'resolved' => 'Resolved', 'wontfix' => 'Wontfix', 'invalid' => 'Invalid', 'duplicate' => 'Duplicate', 'spite' => 'Spite', )
// ...
$status = $request->getValue('status');
if ($status !== null) {
$valid_statuses = ManiphestTaskStatus::getTaskStatusMap();
if (!isset($valid_statuses[$status])) {
throw id(new ConduitException('ERR-INVALID-PARAMETER'))
->setErrorDescription('Status set to invalid value.');
}
// ...
}