<?php

return [
    [
        'id' => 'system.sync_logs',
        'legacy_name' => 'SyncLogs',
        'name' => 'Sync logs',
        'description' => 'Flush Redis-backed application logs into the database.',
        'module' => 'system',
        'handler' => 'syncLogsToDatabase',
        'schedule' => ['type' => 'interval', 'seconds' => 300],
        'timeout_seconds' => 120,
        'estimated_duration_ms' => 1000,
        'priority' => 10,
    ],
    [
        'id' => 'system.search_cache_maintenance',
        'legacy_name' => 'SystemSearchCacheMaintenanceCron',
        'name' => 'System search cache maintenance',
        'description' => 'Processes dirty-table and full rebuild requests for system search caches.',
        'module' => 'system',
        'handler' => 'SystemSearchCacheMaintenanceCron',
        'schedule' => ['type' => 'interval', 'seconds' => 300],
        'timeout_seconds' => 600,
        'estimated_duration_ms' => 3000,
        'priority' => 70,
    ],
    [
        'id' => 'system.prune_session_activity',
        'legacy_name' => 'PruneSystemSessionActivityCron',
        'name' => 'Prune system session activity',
        'description' => 'Deletes stale system session activity rows.',
        'module' => 'system',
        'handler' => 'PruneSystemSessionActivityCron',
        'schedule' => ['type' => 'interval', 'seconds' => 86400],
        'timeout_seconds' => 300,
        'estimated_duration_ms' => 1000,
        'priority' => 120,
    ],
    [
        'id' => 'system.invoice_flags_manual_cache',
        'legacy_name' => 'WarmInvoicePeriodManualFlagsCron',
        'name' => 'Warm manual invoice flag cache',
        'description' => 'Warms superuser invoice-period manual flag counters.',
        'module' => 'system',
        'handler' => 'WarmInvoicePeriodManualFlagsCron',
        'schedule' => ['type' => 'interval', 'seconds' => 300],
        'timeout_seconds' => 600,
        'estimated_duration_ms' => 2000,
        'priority' => 80,
    ],
    [
        'id' => 'system.invoice_flags_automatic_cache',
        'legacy_name' => 'WarmInvoicePeriodAutomaticFlagsCron',
        'name' => 'Warm automatic invoice flag cache',
        'description' => 'Warms current, previous, and queued invoice-period automatic flag caches.',
        'module' => 'system',
        'handler' => 'WarmInvoicePeriodAutomaticFlagsCron',
        'schedule' => ['type' => 'interval', 'seconds' => 300],
        'timeout_seconds' => 900,
        'estimated_duration_ms' => 5000,
        'priority' => 85,
    ],
];
