  
  class ManagerProcess(ABC):
    daemon = False
    sigkill = False
    onroad = True
    offroad = False
    callback: Optional[Callable[[bool, Params, car.CarParams], bool]] = None
    proc: Optional[Process] = None
    enabled = True
    name = ""
  
    last_watchdog_time = 0
 
</s> remove     self.onroad = onroad
    self.offroad = offroad
    self.callback = callback
    self.unkillable = unkillable
 </s> add  </s> remove   def __init__(self, name, cwd, cmdline, enabled=True, onroad=True, offroad=False, callback=None, unkillable=False, sigkill=False, watchdog_max_dt=None):
 </s> add   def __init__(self, name, cwd, cmdline, should_run, enabled=True, sigkill=False, watchdog_max_dt=None):
  should_run: Callable[[bool, Params, car.CarParams], bool]
  
  class ManagerProcess(ABC):
    daemon = False
    sigkill = False
  should_run: Callable[[bool, Params, car.CarParams], bool]
  should_run: Callable[[bool, Params, car.CarParams], bool]
  should_run: Callable[[bool, Params, car.CarParams], bool]
    proc: Optional[Process] = None
    enabled = True
    name = ""
  
    last_watchdog_time = 0
keep keep keep keep replace replace replace keep keep keep keep keep
 manager: refactor process starting logic (#29574)

* refactor into sane api

* always set

* cleanup

* cleanup

* and there too

* fix order

* fail

* and ensure we test

* pass test

pass test

* order

* only diff not related

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com> 
selfdrive/manager/process.py