app->afterResolving(ConcurrencyManager::class, function (ConcurrencyManager $manager): void { $manager->extend('process', function (): TimeoutAwareProcessDriver { $configuredTimeout = config('nntmux.concurrency_timeout'); $timeout = (int) ($configuredTimeout ?? config('nntmux.multiprocessing_max_child_time', 1800)); return new TimeoutAwareProcessDriver( app(ProcessFactory::class), $timeout ); }); }); } }