Conduit: Validate "attachments" keys for correctness
Summary:
`PhabricatorApplicationSearchEngine::buildConduitResponse()` already does some validation for passed `constraints`.
It should do the same for passed `attachments`.
Closes T16525
Test Plan:
* Look at http://phorge.localhost/conduit/method/maniphest.search/#attachments and understand which attachment keys are valid for this endpoint.
* In the `attachments` field, enter nonsense like `{"subscribers":["foo","bar"],"invalidkey":["foo"]}` or `{"foo":"bar"}`, and press "Call Method"
* Get an error message after applying this patch
* In the `attachments` field, enter half-nonsense (at least valid keys) like `{"subscribers":["foo","bar"],"projects":[""]}`, and press "Call Method"
* Get results and no error, as before (as this patch only introduces validation of keys but not of values)
Reviewers: O1 Blessed Committers, valerio.bozzolan
Reviewed By: O1 Blessed Committers, valerio.bozzolan
Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno
Maniphest Tasks: T16525
Differential Revision: https://we.phorge.it/D26796