1
Retry failed workflow email actions and surface failures in the UI
Source: paperless-ngx/paperless-ngx#14684 · opened by @quantx-heiko
Description Workflow email actions are currently sent synchronously and exactly once (execute_email_action in documents/workflows/actions.py). Any exception is caught and only written to the log. The workflow then continues with its remaining actions. In practice, a transient problem (in my case a brief DNS outage, socket.gaierror: [Errno -3] Temporary failure in name resolution) causes the email to be silently lost. Subsequent actions still run, e.g. a tag marking the document as “sent to accountant”, so the document’s state ends up wrong. The user only finds out by reading the container logs. Proposal 1. Move the actual sending into a Celery task (e.g. send_workflow_email), analogous to send_webhook, with automatic retries for transient errors: Note that socket.gaierror and connection errors are subclasses of OSError. 2. Register the task in TRACKED_TASKS with a new PaperlessTask.TaskType (e.g. SEND_EMAIL). When all retries are exhausted, the failure then shows up …
No pledges yet. Be the first to back this.
Comments
Similar requests
[Feature Request]: Allow workflows to filter on standard document fields such as ASN
1 vote · 0 comments
[Feature Request]: Workflow conflict detection and logic validation
1 vote · 0 comments
[Feature Request] Allow workflow actions to wait for AI suggestions to be applied
1 vote · 0 comments
[Feature Request] Add Retry / Delete File action button in File Tasks view
16 votes · 0 comments
[Feature Request] Move failed consumed documents to a directory instead of deleting them
4 votes · 0 comments
No comments yet.