Validate color existence when setting project color
Summary:
Do not allow setting an invalid project color via the `project.edit` Conduit API but validate the value.
Same game as in D26430, D26459.
Closes T16237
Test Plan:
* Run `echo '{"transactions":[{"type":"name","value":"projectWithInvalidColor"},{"type":"color","value":"purpleyellowgreyish"},{"type":"description","value":"project project new new new"}]}' | /var/www/html/phorge/arcanist/bin/arc call-conduit --conduit-uri http://phorge.localhost --conduit-token "cli-xxx" project.edit --`
* Succeed before applying this patch
* Fail after applying this patch:
```
{
"error": "ERR-CONDUIT-CORE",
"errorMessage": "ERR-CONDUIT-CORE: <project.edit> Validation errors:\n - Value for \"project:color\" is invalid: \"purpleyellowgreyish\".",
"response": null
}
```
* Still succeed with a valid name like `{"type":"color","value":"checkered"}`
* Manually set a color in the project using the frontend. It works.
* Change every single other color, like Red, Orange, Yellow, ... Grey, Checkered, they all works
* Set color to Orange. Archive the project. Activate the project. It still works, you still see the original color Orange.
Reviewers: O1 Blessed Committers, valerio.bozzolan
Reviewed By: O1 Blessed Committers, valerio.bozzolan
Subscribers: avivey, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno
Maniphest Tasks: T16323, T16237
Differential Revision: https://we.phorge.it/D26460