Skip to content

Onboarding progress UI: step indicator out of sync + stuck after a successful register #232

@hanwencheng

Description

@hanwencheng

Context

During web onboarding the 2nd Touch ID — the on-chain master register, conceptually step 5 "Register master P256Account" — fires while the progress bar still shows step 3 ("Bind passkey"), and the UI then stays stuck on that screen even though the register succeeded. Verified on a real run: operatorMasterWallet[omni] set, master device isActive=true, and the daemon GET /v1/onboarding/state returns chain: "master-registered". The slow Heima handleOps (10–30s) outruns the browser's await, so the frontend log stops at "signing REGISTER userOpHash (2nd Touch ID)" with no "REGISTERED ✅" and the step counter never advances.

Scope

  • apps/parent-control/app/_components/ceremony.tsx (CeremonyRunner step tracking) + App.tsx onboarding flow.
  • The indicator must track the actual stage — the 2nd Touch ID is "Register master" (step 5), not step 3.
  • On register success — or when the daemon already reports chain: "master-registered" — complete onboarding and route into the app instead of hanging.
  • Tolerate the slow-handleOps case: poll GET /v1/onboarding/state and advance when master-registered, not solely the in-flight await.

Acceptance

  • The 2nd Touch ID shows the correct step (register), not step 3.
  • After a successful register (or detected master-registered), the UI advances out of the ceremony into the app — no manual reload.

Effort

~S.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/uiParent-control UI, vendor onboarding portal, audit dashboard

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions