@@ -606,7 +606,9 @@ entire list in the case of a list position), either resolving to {null} if
606
606
allowed or being further propagated to a parent response position.
607
607
608
608
If 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_ .
610
612
611
613
Note: See [ Handling Execution Errors] ( #sec-Handling-Execution-Errors ) for more
612
614
about this behavior.
@@ -920,10 +922,13 @@ that position is of a `Non-Null` type, then an execution error is raised at that
920
922
position. The error must be added to the {"errors"} list in the _ execution
921
923
result_ .
922
924
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).
923
927
If a _ response position_ resolves to {null} because of an execution error which
924
928
has 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.
927
932
928
933
Since ` Non-Null ` response positions cannot be {null}, execution errors are
929
934
propagated to be handled by the parent _ response position_ . If the parent
0 commit comments