code: def report_progress(self, length: float) -> None:
      if not self._is_chief:
          raise RuntimeError(
              "you must only call op.report_progress() from the chief worker"
          )
      if self._completed and length != self._length:
          raise RuntimeError(
              "you must not call op.report_progress() after op.report_completed()"
          )
      logger.info(f"progress report: {length}/{self._length}")
  
imports: import enum
  import logging
  from typing import Any, Iterator, Optional
  import determined
  from determined import core
  from determined.common import api
label_desc: Use image node_id 2 for calling the DummySearcherOperation obj's underlying member method code with example usage: obj.report_progress(length) without return types