Uh oh!
There was an error while loading. Please reload this page.
v0.5.111: non-polling webhook execs off trigger.dev, gmail subject headers, webhook trigger configs - #3530
Conversation
icecrasher321
commented
Mar 12, 2026
- fix(gmail): RFC 2047 encode subject headers for non-ASCII characters (fix(gmail): RFC 2047 encode subject headers for non-ASCII characters #3526)
- feat(webhooks): dedup and custom ack configuration (feat(webhooks): dedup and custom ack configuration #3525)
- improvement(webhooks): move non-polling executions off trigger.dev (improvement(webhooks): move non-polling executions off trigger.dev #3527)
…3526) * fix(gmail): RFC 2047 encode subject headers for non-ASCII characters * Fix RFC 2047 encoded word length limit Split long email subjects into multiple RFC 2047 encoded words to comply with the 75-character limit per RFC 2047 Section 2. Each encoded word now contains at most 45 bytes of UTF-8 content (producing max 60 chars of base64 + 12 chars overhead = 72 total). Multiple encoded words are separated by CRLF + space (folding whitespace). Applied via @cursor push command * fix(gmail): split RFC 2047 encoded words on character boundaries * fix(gmail): simplify RFC 2047 encoding to match Google's own sample --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com>
* feat(webhooks): dedup and custom ack configuration * address review comments * reject object typed idempotency key
…3527) * improvement(webhooks): move non-polling off trigger.dev * restore constants file * improve comment * add unit test to prevent drift
PR SummaryMedium Risk Overview Execution backend routing: Introduces Other fixes: Gmail message building now RFC 2047-encodes non-ASCII Written by Cursor Bugbot for commit 68d207d. Configure here. |
The latest updates on your projects. Learn more about Vercel for GitHub. |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Uh oh!
There was an error while loading. Please reload this page.
Greptile SummaryThis PR bundles three improvements: non-polling webhooks (generic, Slack, etc.) are moved off Trigger.dev to always execute inline via a new Key changes:
Confidence Score: 3/5
Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Incoming Webhook POST] --> B[queueWebhookExecution]
B --> C{Strip x-sim-idempotency-key\nfrom headers}
C --> D{provider == 'generic'\n& idempotencyField set?}
D -- Yes --> E[Resolve dot-path in body\nInject x-sim-idempotency-key]
D -- No --> F[Build payload]
E --> F
F --> G{isPollingWebhookProvider?}
G -- Yes --> H{shouldExecuteInline?\ni.e. NOT Trigger.dev}
H -- No\nTrigger.dev available --> I[getJobQueue\nEnqueue via Trigger.dev]
H -- Yes\nRedis or DB mode --> J[getInlineJobQueue\nEnqueue + fire inline]
G -- No\nnon-polling webhook --> J
I --> K[Response]
J --> K
K --> L{provider-specific\nresponse?}
L -- microsoft-teams --> M[202 / teams message]
L -- slack --> N[200 empty]
L -- twilio_voice --> O[TwiML XML]
L -- generic + custom responseMode --> P[Custom status + body]
L -- default --> Q[200 Webhook processed]
|
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.