Problem: When I run the task manually from System -> Scheduled Tasks, it shows Last Exit Code 0, but no inactive users are deleted.
In the scheduler log (administrator/logs/joomla_scheduler.php), the task starts but does not finish: Running task#04 'Delete inactive users'
Running the task via CLI shows the real error: Call to undefined method stdClass::get() in plugins/task/admintools/src/Extension/SubTask/DeleteInactiveUsers.php (line 47)
Cause: Joomla passes task params as a stdClass object, but this handler calls $params->get('deleteinactive_groups', []), which only works on a Registry object.
Other Admin Tools task handlers (for example CacheCleaner and RemoveOldLogEntries) use property access instead.
Current problematic code: $params = $event->getArgument('params') ?: (new Registry()); $groups = $params->get('deleteinactive_groups', []);
Suggested fix: $params = $event->getArgument('params') ?: (new \stdClass()); $filtertype = (int) ($params->deleteinactive ?? 1); $days = (int) ($params->deleteinactive_days ?? 0); $groups = $params->deleteinactive_groups ?? [];
Local test: After this change, the task completed successfully via CLI and deleted the users that matched the configured criteria. The SQL logic itself appears fine; the task fails before it runs because of the params handling bug.
Please let me know if you need the full CLI stack trace or a patch file.
Thanks