code: func (c *mutationCache) GetByKey(key string) (interface{}, bool, error) {
  	c.lock.Lock()
  	defer c.lock.Unlock()
  
  	obj, exists, err := c.backingCache.GetByKey(key)
  	if err != nil {
  		return nil, false, err
  	}
  	if !exists {
  		if !c.includeAdds {
  			// we can't distinguish between, "didn't observe create" and "was deleted after create", so
  			// if the key is missing, we always return it as missing
  			return nil, false, nil
  		}
  		obj, exists = c.mutationCache.Get(key)
  		if !exists {
  			return nil, false, nil
  		}
  	}
  	objRuntime, ok := obj.(runtime.Object)
  	if !ok {
  		return obj, true, nil
  	}
  	return c.newerObject(key, objRuntime), true, nil
  }
docs: // GetByKey is never guaranteed to return back the value set in Mutation.  It could be paged out, it could
  // be older than another copy, the backingCache may be more recent or, you might have written twice into the same key.
  // You get a value that was valid at some snapshot of time and will always return the newer of backingCache and mutationCache.