From 71bd0d2eedaa193fbb9a1c570bde4dd8b66d4074 Mon Sep 17 00:00:00 2001 From: objecttothis <17935339+objecttothis@users.noreply.github.com> Date: Thu, 17 Sep 2026 16:30:01 +0400 Subject: [PATCH] refactor(filters): use BoundedTaskRunner in JobRunner - Replace TaskRunner with BoundedTaskRunner, passing deadline (start + maxSeconds) so scheduled task execution respects the filter's time budget instead of running unbounded. - Remove now-unused TaskRunner import; runner is instantiated only when time remains before maxSeconds. Signed-off-by: objecttothis <17935339+objecttothis@users.noreply.github.com> --- app/Filters/JobRunner.php | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/app/Filters/JobRunner.php b/app/Filters/JobRunner.php index d769d3b33..87514dcea 100644 --- a/app/Filters/JobRunner.php +++ b/app/Filters/JobRunner.php @@ -5,7 +5,6 @@ namespace App\Filters; use CodeIgniter\Filters\FilterInterface; use CodeIgniter\HTTP\RequestInterface; use CodeIgniter\HTTP\ResponseInterface; -use CodeIgniter\Tasks\TaskRunner; use Config\OSPOS; use Config\Tasks; use Throwable; @@ -55,9 +54,8 @@ class JobRunner implements FilterInterface try { config(Tasks::class)->init(service('scheduler')); - $runner = new TaskRunner(); - if (microtime(true) - $start < $maxSeconds) { + $runner = new BoundedTaskRunner($start + $maxSeconds); $runner->run(); } } catch (Throwable $e) {