anchor.diff:      if (response.authority == Authority.PRIMARY) {
         sink.close();
       }
  +  }
  +
  +  void handleError(error, EventSink<Response> sink, Trace trace) {
  +    sink.addError(error);
  +    sink.close();
     }
   }
   
  
positive.code:           trace.record(new UserCallbackAsyncExitEvent());
            asyncCount--;
            if (asyncCount == 0) {
              onDone();
            }
          }
  
negative.code:   void handleError(error, EventSink<Response> sink, Trace trace) {
      trace.record(new UserCallbackQueuedEvent());
      _openCallbacks++;
      _runZonedWithOnDone(() {
        sink.addError(error);
      }, () {
        trace.record(new UserCallbackDoneEvent());
        _openCallbacks--;
        if (_openCallbacks == 0 && _closed && !_sentDone) {
  