code: def _update_task_args(cls):
      if running_remotely() or not cls._current_task:
          return
      args = {}
      parameters_types = {}
      if cls.__current_command is None:
          args = {
              cls._section_name + cls._args_sep + k: v
              for k, v in cls._args.items()
          }
          parameters_types = {
              cls._section_name
              + cls._args_sep
              + k: cls._shared_arg_type
              for k in cls._args.keys()
          }
          for k in PatchFire.__command_args.get(None) or []:
              k = cls._section_name + cls._args_sep + k
              if k not in args:
                  args[k] = None
      else:
          args[
              cls._section_name + cls._args_sep + cls.__current_command
          ] = True
          parameters_types[
              cls._section_name + cls._args_sep + cls.__current_command
          ] = cls._command_type
          args.update(
              {
                  cls._section_name
                  + cls._args_sep
                  + cls.__current_command
                  + cls._args_sep
                  + k: v
                  for k, v in cls._args.items()
                  if k
                  in (
                      PatchFire.__command_args.get(
                          cls.__current_command
                      )
                      or []
                  )
              }
          )
          args.update(
              {
                  cls._section_name + cls._args_sep + k: v
                  for k, v in cls._args.items()
                  if k
                  not in (
                      PatchFire.__command_args.get(
                          cls.__current_command
                      )
                      or []
                  )
              }
          )
          parameters_types.update(
              {
                  cls._section_name
                  + cls._args_sep
                  + cls.__current_command
                  + cls._args_sep
                  + k: cls._command_arg_type_template
                  % cls.__current_command
                  for k in cls._args.keys()
                  if k
                  in (
                      PatchFire.__command_args.get(
                          cls.__current_command
                      )
                      or []
                  )
              }
          )
          parameters_types.update(
              {
                  cls._section_name
                  + cls._args_sep
                  + k: cls._shared_arg_type
                  for k in cls._args.keys()
                  if k
                  not in (
                      PatchFire.__command_args.get(
                          cls.__current_command
                      )
                      or []
                  )
              }
          )
      for command in cls.__commands:
          if command == cls.__current_command:
              continue
          args[cls._section_name + cls._args_sep + command] = False
          parameters_types[
              cls._section_name + cls._args_sep + command
          ] = cls._command_type
          unused_command_args = {
              cls._section_name
              + cls._args_sep
              + command
              + cls._args_sep
              + k: None
              for k in (cls.__command_args.get(command) or [])
          }
          unused_paramenters_types = {
              cls._section_name
              + cls._args_sep
              + command
              + cls._args_sep
              + k: cls._command_arg_type_template % command
              for k in (cls.__command_args.get(command) or [])
          }
          args.update(unused_command_args)
          parameters_types.update(unused_paramenters_types)
  
      # noinspection PyProtectedMember
      cls._current_task._set_parameters(
          args,
          __update=True,
          __parameters_types=parameters_types,
      )
  
imports: import inspect
  from .frameworks import _patched_call
  from ..config import get_remote_task_id, running_remotely
  from ..utilities.dicts import cast_str_to_bool
label_desc: Use image node_id 2 for calling the PatchFire obj's underlying member method code with example usage: obj._update_task_args(cls) without return types