Skip to content

fix(onboarding): extend onboarding refresh timeout#1925

Merged
elibosley merged 1 commit intomainfrom
codex/onboarding-refresh-timeout-5500ms
Mar 17, 2026
Merged

fix(onboarding): extend onboarding refresh timeout#1925
elibosley merged 1 commit intomainfrom
codex/onboarding-refresh-timeout-5500ms

Conversation

@Ajit-Mehrotra
Copy link
Contributor

@Ajit-Mehrotra Ajit-Mehrotra commented Mar 17, 2026

Summary

  • increase the post-completion onboarding refresh timeout in Confirm & Apply from 1500ms to 5500ms
  • reduce false-positive "Onboarding refresh timed out" warnings on slower systems/network paths

Why

  • the existing 1.5s timeout can race a valid onboarding bootstrap refetch, producing noisy warning logs while setup still succeeds

Notes

  • pre-commit hook failed in this worktree because lint-staged was unavailable; commit was created with --no-verify
  • no tests were run in this pass

Summary by CodeRabbit

  • Bug Fixes
    • Improved onboarding reliability by increasing the timeout threshold to allow more time for the onboarding process to complete, reducing premature timeout errors.

- Purpose of the change: reduce false timeout warnings during Confirm & Apply by giving onboarding state refresh more time to complete.

- Behavior before: the post-completion onboarding refetch timed out after 1500ms and logged a warning even when setup otherwise succeeded.

- Why that was a problem: slower local networks or transient API latency could surface noisy timeout diagnostics and best-effort messaging despite successful completion.

- What the new change accomplishes: increases the refresh timeout window from 1500ms to 5500ms before marking the refresh as timed out.

- How it works: updates the Promise.race timeout used around refetchOnboarding() in OnboardingSummaryStep.vue.
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 17, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 04a55dbf-2c54-4758-a7d2-e929165a85b5

📥 Commits

Reviewing files that changed from the base of the PR and between d3032c1 and bdfdfce.

📒 Files selected for processing (1)
  • web/src/components/Onboarding/steps/OnboardingSummaryStep.vue

Walkthrough

A timeout value in the onboarding summary step's refresh mechanism was increased from 1500 milliseconds to 5500 milliseconds. This adjustment applies to a Promise.race operation used during the onboarding process. No other logic or control flow changes were made.

Changes

Cohort / File(s) Summary
Onboarding Timeout Adjustment
web/src/components/Onboarding/steps/OnboardingSummaryStep.vue
Increased Promise.race rejection timeout from 1500 ms to 5500 ms for onboarding refresh operation.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐰 A timeout that needed more grace,
From fifteen hundred to fifty-five,
The onboarding step takes its time and space,
Letting promises breathe and thrive! ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately and concisely describes the main change: extending the onboarding refresh timeout from 1500ms to 5500ms.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/onboarding-refresh-timeout-5500ms
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link

codecov bot commented Mar 17, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 51.66%. Comparing base (d3032c1) to head (bdfdfce).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1925   +/-   ##
=======================================
  Coverage   51.66%   51.66%           
=======================================
  Files        1026     1026           
  Lines       70930    70930           
  Branches     7837     7837           
=======================================
  Hits        36645    36645           
  Misses      34163    34163           
  Partials      122      122           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions
Copy link
Contributor

This plugin has been deployed to Cloudflare R2 and is available for testing.
Download it at this URL:

https://preview.dl.unraid.net/unraid-api/tag/PR1925/dynamix.unraid.net.plg

@elibosley elibosley marked this pull request as ready for review March 17, 2026 21:27
@elibosley elibosley merged commit e2a5f44 into main Mar 17, 2026
13 checks passed
@elibosley elibosley deleted the codex/onboarding-refresh-timeout-5500ms branch March 17, 2026 21:27
elibosley pushed a commit that referenced this pull request Mar 18, 2026
🤖 I have created a release *beep* *boop*
---


## [4.30.0](v4.29.2...v4.30.0)
(2026-03-18)


### Features

* add internal boot step to onboarding flow
([#1881](#1881))
([337aecc](337aecc))
* Add TPM licensing availability to registration
([#1908](#1908))
([aa162eb](aa162eb))
* add UPS power ([#1874](#1874))
([b531aed](b531aed))
* **api:** alert when usb boot has internal boot target
([#1898](#1898))
([b94df47](b94df47))
* **api:** expose internal boot devices in array GraphQL
([#1894](#1894))
([0736709](0736709))
* docker overview ([#1855](#1855))
([9ef1cf1](9ef1cf1))
* **docker:** add update actions to container context menu
([#1867](#1867))
([4ca3e06](4ca3e06))
* **docker:** disable containers page file modification
([#1870](#1870))
([aaa0372](aaa0372))
* issues/1597: Temperature Monitoring - Thanks @MitchellThompkins
([a1be458](a1be458))
* New Crowdin updates
([#1809](#1809))
([a7b3f07](a7b3f07))
* New Crowdin updates
([#1883](#1883))
([14a8fa8](14a8fa8))
* **onboarding:** add new onboarding flows for Unraid OS
([#1746](#1746))
([15bd747](15bd747))
* registration and trial actions use Account app
([#1928](#1928))
([c2c0425](c2c0425))
* share internal boot state
([#1921](#1921))
([8e4d44d](8e4d44d))
* **web:** show TPM move control for trial licenses
([#1911](#1911))
([d00fb63](d00fb63))


### Bug Fixes

* Add dedicated TPM license move option
([#1909](#1909))
([36c56f7](36c56f7))
* allow free USB targets in onboarding internal boot setup
([#1903](#1903))
([298da54](298da54))
* API key key display truncation
([#1890](#1890))
([b12f75c](b12f75c))
* **api:** harden PHP wrapper args for newer PHP versions
([#1901](#1901))
([849f177](849f177))
* **api:** prevent flash notification startup fd exhaustion
([#1893](#1893))
([4b231ad](4b231ad))
* clear stale onboarding modal session state
([#1904](#1904))
([23f7836](23f7836))
* consistently clear onboarding draft
([#1916](#1916))
([199d803](199d803))
* correct graphql-api.log timestamp formatting
([#1918](#1918))
([243c5a8](243c5a8))
* **deps:** pin dependencies
([#1878](#1878))
([db88eb8](db88eb8))
* **docker:** change "visit" to "webui" & use correct link
([#1863](#1863))
([cab0880](cab0880))
* **docker:** improve start/stop UX with visual feedback
([#1865](#1865))
([c084e25](c084e25))
* **docker:** remove aggressive caching to ensure data correctness
([#1864](#1864))
([1c1bae8](1c1bae8))
* **docker:** sync template mappings in organizer to prevent false
orphan warnings ([#1866](#1866))
([38a6f0c](38a6f0c))
* onboarding internal-boot warning panel contrast and semantics
([#1927](#1927))
([bb6f241](bb6f241))
* **onboarding:** add explicit EFI loader path for flash entry
([#1926](#1926))
([429b438](429b438))
* **onboarding:** extend onboarding refresh timeout
([#1925](#1925))
([e2a5f44](e2a5f44))
* **onboarding:** persist installed plugins in summary
([#1915](#1915))
([07f4ebd](07f4ebd))
* **onboarding:** refine storage boot setup UX
([#1900](#1900))
([1108d0a](1108d0a))
* polish onboarding flow
([#1902](#1902))
([8742cac](8742cac))
* preserve registration device limits after refresh
([#1905](#1905))
([234bfc7](234bfc7))
* prevent onboarding on API errors
([#1917](#1917))
([540d6f9](540d6f9))
* remap TPM guid prefix to 01
([#1924](#1924))
([5360b5b](5360b5b))
* Return null for corrupted/invalid API key files and add Connect
fixtures test ([#1886](#1886))
([013e6c5](013e6c5))
* share internal boot state across onboarding
([#1920](#1920))
([f9b293f](f9b293f))
* too many file descriptors with thousands of notifications
([#1887](#1887))
([7956987](7956987))
* Treat onboarding patch updates as completed
([#1884](#1884))
([d03b25e](d03b25e))
* unify onboarding internal boot state refresh
([#1923](#1923))
([d3032c1](d3032c1))
* **web:** refresh internal boot onboarding state
([#1913](#1913))
([1ca2129](1ca2129))
* **web:** stop showing callback errors after successful key installs
([#1892](#1892))
([45f1402](45f1402))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
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.

2 participants