Files
Lesstime/config/packages/messenger.yaml
Matthieu fb97b8d4e3
Some checks failed
Auto Tag Develop / tag (push) Has been cancelled
fix(mail) : sync à la demande synchrone pour le bouton rafraîchir
Route MailSyncRequested vers le transport sync au lieu d'async : la
synchro IMAP s'exécute pendant la requête HTTP du clic « rafraîchir »,
donc le re-fetch du front voit immédiatement les nouveaux mails, sans
worker messenger:consume à maintenir en prod. La sync de fond reste
assurée par le cron OS (app:mail:sync, synchrone, indépendant du bus).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 09:56:23 +02:00

34 lines
1.1 KiB
YAML

framework:
messenger:
failure_transport: failed
transports:
sync: 'sync://'
async:
dsn: '%env(MESSENGER_TRANSPORT_DSN)%'
options:
queue_name: default
retry_strategy:
max_retries: 3
delay: 1000
multiplier: 2
max_delay: 0
failed: 'doctrine://default?queue_name=failed&auto_setup=0'
routing:
# Sync à la demande (bouton « rafraîchir ») : exécutée pendant la requête HTTP
# pour que le re-fetch du front voie immédiatement les nouveaux mails, sans worker
# messenger:consume à maintenir. La sync de fond reste assurée par le cron OS
# (app:mail:sync, synchrone, indépendant du bus). Repasser à `async` + worker si
# la boîte grossit au point que la sync à la demande approche le timeout PHP.
'App\Message\MailSyncRequested': sync
when@test:
framework:
messenger:
transports:
async: 'in-memory://'
failed: 'in-memory://'