slackapi / slackapi/deno-slack-api
[FEATURE] Retry requests if "tls handshake eof" error detected
Open
Nobody has claimed this yet.
bug
enhancement
semver:patch
- Dominant language
- TypeScript
- Stars
- 45
- Forks
- 18
- PR merge metrics
- No merged PRs in 30d
Description
I have a workflow that runs daily, haven't made changes to it for some time. Got this error today. Maybe a hiccup on the backend?
2023-11-13 08:00:50 [info] [Fn060X3USBNZ] (Trace=Tr0657KMM4GN) Function output:
Caught error from user supplied module: TypeError: error sending request for url (https://slack.com/api/functions.completeSuccess): error trying to connect: tls handshake eof
at async mainFetch (ext:deno_fetch/26_fetch.js:277:12)
at async fetch (ext:deno_fetch/26_fetch.js:504:7)
at async BaseSlackAPIClient.apiCall (file:///opt/runtime.js:44:22)
at async Object.RunFunction [as function_executed] (file:///opt/runtime.js:1709:29)
at async DispatchPayload (file:///opt/runtime.js:1790:16)
at async run (file:///opt/runtime.js:1857:18)
at async serveHttp (file:///opt/runtime.js:1885:38)
Error responding HTTP 500 to webapp request: Http: connection closed before message completed
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at BaseSlackAPIClient.apiCall in /opt/runtime.js, where the stack trace shows the request reaching Deno's fetch implementation. Trace how request errors are surfaced and determine the retry boundary for a TLS handshake EOF. Done means requests with this error are retried without changing successful request behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- deno, typescript
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100