# Solid Queue configuration
# See: https://github.com/rails/solid_queue

default: &default
  dispatchers:
    - polling_interval: 1
      batch_size: 500
  workers:
    - queues: "*"
      threads: 3
      polling_interval: 0.1

development:
  <<: *default

test:
  <<: *default

production:
  dispatchers:
    - polling_interval: 1
      batch_size: 500
      concurrency_maintenance_interval: 30
  workers:
    # High priority queue for emails
    - queues: [mailers]
      threads: 2
      polling_interval: 0.1
    # Notifications queue (ntfy, etc.)
    - queues: [notifications]
      threads: 2
      polling_interval: 0.5
    # Default queue for other jobs
    - queues: [default]
      threads: 3
      polling_interval: 0.5
    # Low priority queue for batch operations
    - queues: [low]
      threads: 1
      polling_interval: 2
