code: def test_repro_allow_missing_upstream_stage_modified(
      tmp_dir, dvc, mocker, local_remote
  ):
      """https://github.com/iterative/dvc/issues/9530"""
      tmp_dir.gen("params.yaml", "param: 1")
      dvc.stage.add(
          name="create-foo",
          cmd="echo ${param} > foo",
          params=["param"],
          outs=["foo"],
      )
      dvc.stage.add(
          name="copy-foo", cmd="cp foo bar", deps=["foo"], outs=["bar"]
      )
      dvc.reproduce()
  
      dvc.push()
  
      tmp_dir.gen("params.yaml", "param: 2")
      (create_foo,) = dvc.reproduce("create-foo")
      dvc.push()
      remove("foo")
      remove(create_foo.outs[0].cache_path)
  
      ret = dvc.reproduce(pull=True, allow_missing=True)
      # create-foo is skipped ; copy-foo pulls modified dep
      assert len(ret) == 1
  
label_desc: Use image node_id 3 for calling a global function with example usage: test_repro_allow_missing_upstream_stage_modified(tmp_dir, dvc, mocker, local_remote) without return types