Skip to content

Show server-down page when server is unavailable#2853

Merged
lifeart merged 4 commits into
masterfrom
feat/server-down-error-page
Mar 10, 2026
Merged

Show server-down page when server is unavailable#2853
lifeart merged 4 commits into
masterfrom
feat/server-down-error-page

Conversation

@lifeart
Copy link
Copy Markdown
Collaborator

@lifeart lifeart commented Mar 10, 2026

Summary

  • When the server doesn't respond (network errors, HTTP 5xx, timeouts), shows a user-friendly error page with a message directing users to report the issue in the Telegram chat
  • Extracted isServerError utility to detect server/network failures (WarpDrive FetchError, TypeError from fetch, AbortError, 5xx status codes)
  • Updated application route to re-throw server errors instead of silently swallowing them
  • Added i18n translations (EN/RU) for all server-down page strings

Closes #2420

Test plan

  • 15 unit tests for isServerError utility covering all error types (5xx, network errors, timeouts, client errors)
  • 3 integration tests for ServerDown component (renders title, message, Telegram link)
  • Full test suite passes (756 tests, 0 failures)

🤖 Generated with Claude Code

lifeart and others added 2 commits March 10, 2026 12:41
When the server doesn't respond (network errors, 5xx status codes,
timeouts), show a user-friendly error page directing users to report
the issue in the Telegram chat instead of the generic "oooops..." page.

Closes #2420

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Move translations loading before API calls so server-down page
  renders with translated text instead of raw keys
- Remove AbortError detection (can be user-initiated navigation)
- Accept unknown type in isServerError with runtime type guard
- Remove unused server_down.telegram_link translation key
- Add test for non-object error values

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

Frontend test coverage: 70.98% (+0.12% compared to 70.86% on base)

@github-actions
Copy link
Copy Markdown

Frontend test coverage: 70.9% (+0.01% compared to 70.89% on base)

@github-actions
Copy link
Copy Markdown

Gradle Unit and Integration Test Results

523 tests  ±0   521 ✔️ ±0   37s ⏱️ -2s
116 suites ±0       2 💤 ±0 
116 files   ±0       0 ±0 

Results for commit 2ffd023. ± Comparison against base commit 38c8093.

lifeart and others added 2 commits March 10, 2026 14:35
Extract ErrorPage component from error route template so it can be
tested directly. Add 7 integration tests verifying ServerDown renders
for server errors (500, 503, network) and generic error renders for
client errors (404, strings, Error objects). Also test rel attribute
on Telegram link.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

Frontend test coverage: 70.9% (+0.01% compared to 70.89% on base)

@github-actions
Copy link
Copy Markdown

Frontend test coverage: 70.63% (-0.21% compared to 70.84% on base)

@lifeart lifeart merged commit 8e10fbe into master Mar 10, 2026
7 checks passed
@lifeart lifeart deleted the feat/server-down-error-page branch March 10, 2026 14:47
@sonarqubecloud
Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FE Web Ember] If server does not answer: show page with message to write about it into our telegram group

1 participant