Repository navigation
fix(settings): stop a failed user settings load from raising an unhandled error - #331
Merged
Merged
Conversation
…dled error SettingsService.init() runs from the constructor and nothing awaits it. When the user settings request failed (Safari reports "TypeError: Load failed" when the page navigates away mid-request), the rejection was unhandled and went to Sentry. Catch it, log a warning and keep the default settings. Fixes BACKOFFICE-4T Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Deployment failed for project backoffice with the following error: Learn More: https://vercel.com/placeos?upgradeToPro=build-rate-limit |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Sentry BACKOFFICE-4T:
TypeError: Load failedon iOS. The user settings request failed while the page was navigating away.SettingsService.init()runs from the constructor and nothing awaits it, so the failed request became an unhandled rejection and went to Sentry.Now
init()catches the failure, logs a warning, and keeps the default settings.Proof: a new unit test fails without the fix (
init()rejects withLoad failed) and passes with it. I also ran an ad hoc Playwright check on the mock backend (Chromium and WebKit) with the settings request forced to fail. Before the fix,[Unhandled rejection] TypeError: Load failedreached the error handler. After the fix, only the warning logs and the app loads. Unit tests (1085), lint and build pass.Reviewed with sol-loop: 1 round with gpt-6.1-sol on high. Sol verdict: approved
Created with Claude Opus 5.5 in Claude Code (T3 Code).
🤖 Generated with Claude Code