Я не очень понял про исключения если честно. Думаю, мой вопрос не совсем про них.
Предположим, у вас есть GraphQL API Gateway/bff, который «торчит попой» наружу в Интернет и принимает запросы от SPA. Он является прокси для внутренних (микро)сервисов, которые находятся внутри безопасного периметра в нашем облаке, доступа из браузера напрямую к ним нет. Запрос создания пользователя обрабатывают несколько микросервисов. Один из них мог не ответить в заданный промежуток времени из-за сбоев сети, из-за исключений где-нибудь в коде из-за бага в новой версии или же из-за неких ограничений в бизнес-логике. То есть мутация вызывает некую сагу, которая что-то там делает с внутренними микросервисами, это уже за пределами зоны ответственности GraphQL сервера, а когда она что-то там сделала, есть понимание статуса выполненной операции. Допустим, это Success, пользователя мы зарегистрировали, но некие дополнительные операции завершились с ошибкой по тем или иным причинам и мы можем захотеть сообщить об этом клиенту (js-клиенту, что нужно ещё раз запросить создание проекта) и/или, возможно, пользователю (вывести уведомление о технических неполадках и попросить зайти позднее).
Так вот, вопрос был про то, что если у нас есть некий набор ошибок, которые мы хотим сообщить клиенту на js и/или пользователю клиента, как это лучше сделать… Все они сериализованы в понятном клиенту виде, должны ли они быть собраны вместе в некий список ошибок или же под каждым полем свои (если есть)