code: def _fetch_json(self, path: str) -> Dict[str, Any]:
      try:
          tmpfile = tempfile.mkstemp(suffix=".json")[1]
          logger.info(tmpfile)
          self.file_manager.download_from_cloud(
              path, tmpfile, delete_after_download=True
          )
  
          with open(tmpfile, "rt") as f:
              data = json.load(f)
  
          os.unlink(tmpfile)
          return data
      except Exception as e:
          raise FetchResultError(
              f"Could not fetch results from session: {e}"
          ) from e
  
imports: import json
  import os
  import re
  import tempfile
  import shlex
  from typing import TYPE_CHECKING, Any, Dict, Optional, List
  from ray_release.cluster_manager.cluster_manager import ClusterManager
  from ray_release.command_runner.job_runner import JobRunner
  from ray_release.exception import TestCommandTimeout, TestCommandError, JobOutOfRetriesError, PrepareCommandError, PrepareCommandTimeout, JobBrokenError, FetchResultError, JobTerminatedBeforeStartError, JobNoLogsError, JobTerminatedError
  from ray_release.file_manager.job_file_manager import JobFileManager
  from ray_release.job_manager import AnyscaleJobManager
  from ray_release.logger import logger
  from ray_release.util import join_cloud_storage_paths, generate_tmp_cloud_storage_path, get_anyscale_sdk, S3_CLOUD_STORAGE
label_desc: Use image node_id 9 for calling the AnyscaleJobRunner obj's underlying member method code with example usage: obj._fetch_json(path) and returns: data