Execution: Resolvers, Queries & Mutations
Explain how a query is parsed, validated and executed, and implement queries, resolvers and mutations in both stacks.
The execution model
What happens between a POST to /graphql and the JSON that comes back: parse, validate, coerce variables, then walk the selection set, with sibling fields running together, top-level mutation fields running one at a time, and every claim read off a source-call log on both stacks.
Queries and resolvers
What a resolver receives and returns, how a parent value becomes a child's arguments and then a source key, how Delivery is derived from handling events instead of stored, and how variables, aliases, fragments and the @include and @skip directives change which sources a query calls.
Mutations and input types
How registerHandlingEvent takes a typed input object, rejects malformed input as a request error and broken domain rules as userErrors data, returns the event with a recomputed delivery, runs aliased mutation fields in order, and stays safe to retry with an idempotency key.