code: def test_check_changed_artifact_then_download(wandb_init, tmp_path):
      """*Do* re-download an artifact if it's been modified in place."""
      original_file = tmp_path / "test.txt"
      original_file.write_text("hello")
      with wandb_init() as run:
          artifact = wandb.Artifact("art", type="dataset")
          artifact.add_file(original_file)
          run.log_artifact(artifact)
  
      # Download the artifact
      with wandb_init() as run:
          artifact_path = Path(
              run.use_artifact("art:latest").download()
          )
          file1 = artifact_path / "test.txt"
          assert file1.is_file()
          assert file1.read_text() == "hello"
  
      # Modify the artifact file to change its hash.
      file1.write_text("goodbye")
  
      # Download it again; it should be replaced with the original version.
      with wandb_init() as run:
          artifact_path = Path(
              run.use_artifact("art:latest").download()
          )
          file2 = artifact_path / "test.txt"
          assert (
              file1 == file2
          )  # Same path, but the content should have changed.
          assert file2.is_file()
          assert file2.read_text() == "hello"
  
imports: import os
  import platform
  import shutil
  import time
  from datetime import datetime, timedelta, timezone
  from pathlib import Path
  from typing import Callable, Optional
  import numpy
  import pytest
  import wandb
  from wandb import Api
  from wandb.sdk.artifacts.artifact import Artifact
  from wandb.sdk.artifacts.exceptions import ArtifactFinalizedError, WaitTimeoutError
  from wandb.sdk.artifacts.staging import get_staging_dir
  from wandb.sdk.wandb_run import Run
label_desc: Use image node_id 17 for calling a global function with example usage: test_check_changed_artifact_then_download(wandb_init, tmp_path) without return types