why do we need to push `:cursor`\`:first` to the cache key?