Type-Safe Error Handling in GraphQL