@@ -606,7 +606,9 @@ entire list in the case of a list position), either resolving to {null} if
606606allowed or being further propagated to a parent response position.
607607
608608If this occurs, any sibling response positions which have not yet executed or
609- have not yet yielded a value may be cancelled to avoid unnecessary work.
609+ have not yet yielded a value may be cancelled to avoid unnecessary work. Any
610+ errors raised by these sibling response positions must not be added to the
611+ {"errors"} list in the _ execution result_ .
610612
611613Note: See [ Handling Execution Errors] ( #sec-Handling-Execution-Errors ) for more
612614about this behavior.
@@ -920,10 +922,13 @@ that position is of a `Non-Null` type, then an execution error is raised at that
920922position. The error must be added to the {"errors"} list in the _ execution
921923result_ .
922924
925+ Exactly one error must be added to the {"errors"} list for each {null} appearing
926+ in the _ execution response_ because of an error (including error propagation).
923927If a _ response position_ resolves to {null} because of an execution error which
924928has already been added to the {"errors"} list in the _ execution result_ , the
925- {"errors"} list must not be further affected. That is, only one error should be
926- added to the errors list per _ response position_ .
929+ {"errors"} list must not be further affected. If a sibling field of a response
930+ position that triggered error propagation also raises an error, this additional
931+ error must not be added to the {"errors"} list.
927932
928933Since ` Non-Null ` response positions cannot be {null}, execution errors are
929934propagated to be handled by the parent _ response position_ . If the parent
0 commit comments