fix(gmail-webhook): gmail webhook synchronous processing fix #553
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Gmail webhooks waited for the entire workflow before responding, so when workflows got longer Gmail would retry, causing duplications in workflow execution. The process is now asynchronous like the other webhooks, preventing the time-related duplicate executions.
Type of change
Please delete options that are not relevant.
How Has This Been Tested?
I had two curl commands send identical requests with the second command sent 10 seconds after the first, while a 30 second workflow was still processing. This recreated the issue where the polling would timeout which would lead to duplicate triggers. After applying the fix, the first request responded quickly and started background processing, and the second request was caught and returned "duplicate request", which is expected behaviour.
Checklist:
bun run test)Security Considerations: