# Phase 4 — anonymous onboarding path (post-ESP retirement, 2026-05-12): # Splash → Display Name → Verif Choice Sheet (curhat anonim) → USP one-time # gate (first-time user → USP screen) → arrival at /payment/method-pick. # # Run: # maestro test client_app/.maestro/flows/03_onboarding_anon.yaml # # Pre-reqs: same as 02_onboarding_verified.yaml. # # NOTE: numeric prefix conflicts with the existing 03_payment_to_chat_happy.yaml # — Stage 9 will reorganize the flow directory once the full Phase 4 suite lands. appId: com.halobestie.client.client_app --- - launchApp: clearState: true # Onboarding carousel. - extendedWaitUntil: visible: text: "Mulai" timeout: 15000 - tapOn: text: "Mulai" retryTapIfNoChange: true # Phase 4 Stage 9: SHome1st "aku mau curhat" CTA replaces the old # /welcome "Lanjut sebagai Tamu" step. Bumped timeout: SHome1st has to # wait on mitra-availability before the CTA renders. - extendedWaitUntil: visible: text: "aku mau curhat" timeout: 20000 - tapOn: text: "aku mau curhat" retryTapIfNoChange: true - extendedWaitUntil: visible: text: "Nama panggilan" timeout: 10000 - tapOn: text: "Nama panggilan" - inputText: "Maestro" - hideKeyboard - tapOn: text: "lanjut" retryTapIfNoChange: true # Verif Choice Sheet — pick anonymous branch - extendedWaitUntil: visible: text: "curhat anonim" timeout: 10000 - tapOn: text: "curhat anonim" retryTapIfNoChange: true # USP one-time gate — first run after clearState, so usp_seen=false → USP shown. # Assert ESP "Lagi mikirin apa?" is NOT visible to catch regression. - extendedWaitUntil: visible: text: "Sebelum mulai" timeout: 10000 - assertNotVisible: text: "Lagi mikirin apa?" - tapOn: text: "aku ngerti, lanjut" retryTapIfNoChange: true # Stage 3 owns /payment/method-pick — arrival is the success signal. - extendedWaitUntil: notVisible: text: "Sebelum mulai" timeout: 10000 - extendedWaitUntil: visible: text: "Pilih cara curhat" timeout: 10000 optional: true