again, this logic seems bad, `undefined` is a valid cached value. not sure why you're changing the behavior.