HomePhabricator

Fix an issue with serializing reviewers over the wire

Description

Fix an issue with serializing reviewers over the wire

Fixes T10981. Ref T10939. arc currently has some odd, hard-coded checks
(missing reviewers, all reviewers away) that depend on the field value being
in a certain format.

The recent changes swapped the field value from scalars (PHIDs) to
dictionaries and broke this workflow. It worked fine in testing because we
apply these checks very inconsistently (not on update or --edit).

To get around this for now, serialize into "PHID!" and then unserialize on
the other side. This is icky but keeps us from needing to require an arc
upgrade.

These checks are generally bad news and should move to the server side in the
long run (T4631).

(This probably prevents clean arc diff, so I'm just cowboy committing it.)

Auditors: chad

Details