fix(onboarding): require contact number, one smooth wait bar - #888
Merged
Conversation
Contact number on the onboarding Details step is now mandatory, both in the SPA (matching the email/company/gstin validation pattern) and in start_signup, which refuses a blank contact_number server-side so the check cannot be bypassed. Updates the 22 existing backend tests and 2 frontend tests that previously called start_signup / submitted Details without a contact number.
… dashboard event render (#884)
…gate foreign dashboard events, id-less tool:end fallback, bounded goto stamps (#884)
Replace the segmented step tiles above the connect and pay wait bars
with one continuous fill plus a single caption naming the current
step ("Step 2 of 6 · Workspace"). The wizard rail keeps its labeled
segments via a new StepProgress variant="steps", since it is real
navigation, not one of the two wait screens the redesign targeted.
…eplacing the dashboard-only card (#884)
A second tab, an errored/stopped terminal, or a was_recovered replacement that dropped the goto block all reach run:end with the latch still set and no navigation coming — the morph line would otherwise animate forever. Only the terminal that actually calls gotoDashboards() keeps the latch through the run:end-to-navigation instant.
Extract the required-contact-number check into _require_contact_number and enforce it in update_billing too, so the Review & Pay "Edit" path can no longer bypass it (was previously only checked in start_signup). Add the same check to onPayClick's client-side guard so a resumed session with a stale blank-contact snapshot routes back to Details instead of hitting the server throw with no way back. Restore the inclusive fill invariant on StepProgress.vue's bar variant: the current step counts toward the fill, matching the steps-rail variant's own i <= currentIndex rule, so wait screens no longer sit stuck below their true progress. currentIndex < 0 now reads as all-done (100%) instead of empty. Also fixes a stale assertion in test_coded_duplicate_resumes: billing is legitimately forwarded on the duplicate-resume path (unchanged behavior), the test just never had a caller passing billing until a prior commit threaded _BILLING through every start_signup call site in this file to satisfy the new contact requirement.
Contributor
Author
4 tasks
4 tasks
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.






Summary
Onboarding now requires a contact number on the Details step, and the provisioning wait screens show one smooth progress bar instead of six labeled tiles sitting above bar segments.
variant="steps".One migration note: a signup that saved Details with a blank contact before this change is rejected at Pay; the Edit button returns the user to Details, where the now-required field catches it.
Pre-merge checklist
testscheck on this PR passes (never merge on ❌)main(branched from currentdevelop)