actually the stopping channel doesn't fit super well inside the OperationController itself since the tasks are handled above that abstraction layer, but storing it inside makes my life incredibly simpler so im gonna do that for now