code: func (s *storageImpl) maybeDelete(c context.Context, gs gs.GoogleStorage, path string) error {
  	switch err := gs.Delete(c, path); {
  	case transient.Tag.In(err):
  		return errors.Annotate(err, "transient error when removing temporary Google Storage file").
  			Tag(grpcutil.InternalTag).Err()
  	case err != nil:
  		logging.WithError(err).Errorf(c, "Failed to remove temporary Google Storage file, it is dead garbage now: %s", path)
  	}
  	return nil
  }
docs: // maybeDelete is called to delete temporary file when finishing an upload.
  //
  // If this fails transiently, we ask the client (or the task queue) to retry the
  // corresponding RPC (by returning transient errors), so the file is deleted
  // eventually. It means Publish may be called again too, but it is idempotent,
  // so it is fine.
  //
  // If Delete fails fatally, we are in a tough position, since we did publish the
  // file already, so the upload operation is technically successful and marking
  // it as failed is a lie. So we log and ignore fatal Delete errors. They should
  // not happen anyway.
  //
  // Thus, this function returns either nil or a transient error.