ENG-175: move webhook parsing + MCP discovery to worker; remove backend docker#267
Conversation
Signed-off-by: betterclever <paliwal.pranjal83@gmail.com>
Signed-off-by: betterclever <paliwal.pranjal83@gmail.com>
Signed-off-by: betterclever <paliwal.pranjal83@gmail.com>
Signed-off-by: betterclever <paliwal.pranjal83@gmail.com>
Signed-off-by: betterclever <paliwal.pranjal83@gmail.com>
Signed-off-by: betterclever <paliwal.pranjal83@gmail.com>
Signed-off-by: betterclever <paliwal.pranjal83@gmail.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ca801103c7
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| input: ExecuteWebhookParsingScriptActivityInput, | ||
| ) => Promise<Record<string, unknown>>; | ||
| }>({ | ||
| startToCloseTimeout: '2 minutes', |
There was a problem hiding this comment.
Disable automatic retries for webhook parsing activity
When the user parsing script throws (syntax/runtime error), webhookParsingWorkflow will keep retrying executeWebhookParsingScriptActivity with Temporal's default retry policy because only startToCloseTimeout is set here and no retry policy limits attempts. In this flow the backend blocks on temporalService.getWorkflowResult(...) in WebhooksService.executeParsingScript, so a permanently failing script can leave webhook deliveries stuck in processing and the request hanging until infrastructure timeouts instead of failing fast. Please set retry.maximumAttempts (typically 1) or a bounded scheduleToCloseTimeout for this activity.
Useful? React with 👍 / 👎.
Signed-off-by: betterclever <paliwal.pranjal83@gmail.com>
|
CI lint failures were prettier/prettier formatting issues. Ran eslint --fix (backend + worker) and pushed. Also addressed potential infinite retry/hanging webhook parsing: webhookParsingWorkflow now bounds activity retries (maximumAttempts=1) and uses a bounded scheduleToCloseTimeout/startToCloseTimeout derived from input.timeoutSeconds (default 120s, capped at 10m). |
Addresses Linear ENG-175.
Changes:
Testing:
Linear: https://linear.app/shipsec-ai/issue/ENG-175/webhook-parsing-test-fails-docker-api-connection-error-no-such-file-or