registry = $registry; $this->stepRunControllerFactory = $stepRunControllerFactory; } public function run(StepRunArgs $runArgs, StepValidationArgs $validationArgs): void { $action = $this->registry->getAction($runArgs->getStep()->getKey()); if (!$action) { throw new InvalidStateException(); } $action->validate($validationArgs); $action->run($runArgs, $this->stepRunControllerFactory->createController($runArgs)); } }