code: def test_cache_historical_state_using_with_cv(
      data_setup, cache_cleanup
  ):
      cv_fold = 1
      cache = OperationsCache()
      train, _ = data_setup
      pipeline = pipeline_first()
  
      # pipeline fitted, model goes to cache
      pipeline.fit(input_data=train)
      cache.save_pipeline(pipeline, fold_id=cv_fold)
      new_node = PipelineNode(operation_type="logit")
      old_node = pipeline.root_node.nodes_from[0]
  
      # change child node to new one
      pipeline.update_node(old_node=old_node, new_node=new_node)
      # cache is not actual
      cache.try_load_nodes(pipeline.root_node)
      assert pipeline.root_node.fitted_operation is None
      # fit modified pipeline
      pipeline.fit(input_data=train)
      cache.save_pipeline(pipeline, fold_id=cv_fold)
      # cache is actual now
      cache.try_load_nodes(pipeline.root_node, fold_id=cv_fold)
      assert pipeline.root_node.fitted_operation is not None
  
      # change node back
      pipeline.update_node(
          old_node=pipeline.root_node.nodes_from[0], new_node=old_node
      )
      # cache is actual without new fitting,
      # because the cached model was saved after first fit
      cache.try_load_nodes(pipeline.root_node, fold_id=cv_fold)
      assert pipeline.root_node.fitted_operation is not None
  
imports: import glob
  import os
  import numpy
  import pytest
  from sklearn.datasets import load_breast_cancer
  from fedot.core.caching.pipelines_cache import OperationsCache
  from fedot.core.data.data import InputData
  from fedot.core.data.data_split import train_test_data_setup
  from fedot.core.pipelines.node import PipelineNode
  from fedot.core.pipelines.pipeline import Pipeline
  from fedot.core.repository.dataset_types import DataTypesEnum
  from fedot.core.repository.tasks import Task, TaskTypesEnum
label_desc: Use image node_id 13 for calling a global function with example usage: test_cache_historical_state_using_with_cv(data_setup, cache_cleanup) without return types