sillsdev / sillsdev/languageforge-lexbox
feat: retry client connection errors and treat client connection errors as non-serious "you are offline" result
@myieye is already working on this.
Since May 13, 2025.
- Dominant language
- C#
- Stars
- 9
- Forks
- 8
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 49
Description
Describe the feature
We received a support request from an user who received two lexbox errors, once when trying to create a project (they eventually succeeded) and once when they tried to rename the project (they eventually succeeded). They reported the red error box message both times.
I concluded that their internet was flaky / unreliable at the time they tried to do these operations. The error message was essentially
Uncaught TypeError: failed to fetch (client error)
which I interpret as a internet client time out / request failed.
The user retried the operation and succeeded later on, presumably when their connection was back on.
Some users' reality is that they are on unreliable internet connections and we should make the lexbox experience more resilient for them. This issue could turn into an epic of sorts.
Ideas for improvement:
- all client requests are wrapped in a 5x retry loop with a 20 second timeout (something long but reasonable)
- The above could result in long client wait times so we need UX to inform the user that the action/request is in progress (spinner / busy indicator?)
- internet connection errors (timeout exceeded) are treated differently and displayed to the user differently, not as a red error box e.g. You are offline, try again later.
Who is this feature for?
all lexbox users
Pages affected
client side error handling on all pages
Contributor guide
No contributing guide indexed for this repository
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.
Assessment
This issue has not been assessed yet.