QC Live Forum Cleanup Scheduled Task

QC Live Forum Cleanup is registered as qc_forum.cleanup and defaults to every 60 minutes. It performs bounded maintenance that removes expired temporary state or finalizes already-expired lifecycle records without treating normal forum content as disposable.

The current cleanup scope is broader than drafts alone: it also expires sanctions, closes due polls, and purges old Deleted Topics under the seven-day recovery rule.

What One Cleanup Run Does

  • Deletes saved composer drafts whose expires_at has passed.
  • Closes up to 500 due open polls in the current selection and queues poll_closed notification events for polls successfully closed.
  • Permanently purges up to 100 soft-deleted Topics older than 7 days; failures remain for retry and make the task result unhealthy.
  • Expires active user sanctions whose expiration time has passed.

What Cleanup Does Not Do

It does not periodically erase normal published Topics, permanent Messages, active subscriptions, forum structure, or saved premium configuration. Deleted-Topic purge follows the explicit recovery-retention model; ordinary content remains preservation-first.

Poll Closure and Notifications

The cleanup service marks due polls closed before emitting the corresponding poll-closed event. Notification delivery may occur separately afterward according to recipient/template preferences and the Notification Delivery task.

Deleted Topics Have a Bounded Purge Batch

The same seven-day lifecycle documented by Deleted Topics recovery is enforced here. Cleanup calls the moderation purge service with retention=7 days and limit=100 so a large backlog is drained over multiple safe task runs rather than one unbounded operation.

Verify Cleanup Safely

  1. Use test data with known draft expiration, sanction expiration, poll close time, or soft-delete age.
  2. Confirm Cleanup executes successfully in Joomla Scheduled Tasks.
  3. Check that only eligible expired records changed and ordinary forum content remained intact.
  4. If expired Topic purge reports failures, leave the rows for retry and investigate the specific purge blocker/error rather than deleting tables manually.

Community Discussion

Want to compare forum workflows, share practical QCLF tips, or discuss how other Joomla site owners use this feature? Visit the QC Live Forum Community. For private support, bug reports, account-specific entitlement problems, or feature requests, use the QuantaCade support system.