IGPAPI
    Preparing search index...

    Variable AccountRecoveryAuthenticationConfirmationScreenConst

    AccountRecoveryAuthenticationConfirmationScreen: ScreenDefinition<
        "AccountRecoveryAuthenticationConfirmation",
        "screen",
        { identifier: string; ticket: string & Brand<"SearchTicket"> },
        { ticket: string & Brand<"CodeEntryTicket"> },
        { ticket: string & Brand<"CodeEntryTicket"> },

            | BloksHttpError
            | InvalidSkipOrdinalsError
            | AccountRecoveryBloksIssuedParamsMissingError
            | RecoverySearchClientInputParamsOrderError
            | ScreenEnterNavigationError
            | AccountRecoveryTicketUnknownError,
        | MobileDevice
        | MobileApplication
        | BloksHttp
        | MobileNavigation
        | AccountRecoveryTickets,
        {
            logInWithCode: (
                self: ScreenHandle,
                state: { ticket: string & Brand<"CodeEntryTicket"> },
            ) => (
                ...args: [code: string],
            ) => Effect<
                AccountRecoveryFirstScreen,
                | IgNotFoundError
                | IgRateLimitError
                | IgSpamError
                | IgSignupBlockError
                | IgCheckpointError
                | IgAccountSuspendedError
                | IgAccountDisabledError
                | IgCookieConsentRequiredError
                | IgLoginRequiredError
                | IgUserLoggedOutError
                | IgChallengeWrongCodeError
                | IgPrivateUserError
                | IgInactiveUserError
                | IgSentryBlockError
                | IgUploadVideoError
                | IgConfigureVideoError
                | IgExactUserNotFoundError
                | IgUserIdNotFoundError
                | IgNetworkError
                | IgDecompressionError
                | IgParseError
                | IgIpBlockError
                | IgLoginTwoFactorRequiredError
                | IgRequestsLimitError
                | IgNotResolvableError
                | RequestError
                | ParseError
                | TransportError
                | LoginBloksParseError
                | IgBloks429Error
                | InvalidSkipOrdinalsError
                | AccountRecoveryBloksIssuedParamsMissingError
                | AccountRecoveryBloksUnknownResponseError
                | ScreenDataError
                | ScreenFeedPageError
                | ScreenEnterNavigationError
                | ScreenEnterConcurrentError
                | ScreenLaunchFirstScreenError
                | ScreenLaunchScreenNotInCatalogError
                | ScreenLaunchSplashNotOnTopError
                | ScreenLaunchSplashScreenError
                | AppAlreadyStartedError
                | ProcessNotSignedInError
                | AccountRecoveryTicketUnknownError
                | ScreenNotOnTopError,
                | MobileSession
                | MobileDevice
                | MobileApplication
                | SessionHeaderParser
                | BloksHttp
                | MobileNavigation
                | AccountRecoveryTickets
                | ScreenStack,
            >;
        },
        Record<never, never>,
        never,
    > = ...

    The account-recovery authentication-confirmation screen of the Android "Forgot password" flow — the Bloks app com.bloks.www.caa.ar.authentication_confirmation, which the search answer pushes after the identifier is submitted (the 448 recovery recording). It is reached by AccountRecoverySearch.findAccount(identifier).

    The recording never moves the client endpoint on this screen: the submit_code call still reports the search screen (com.bloks.www.caa.ar.search as both class and module), so its endpoint module and Android class are the search screen's and the screen changes no endpoint the app does not report. Its enter is the search submission: search.async with the typed identifier and the Android platform overlay androidRecoverySearchClientInputParams; the answer's submit_code action and context token become this screen's opaque ticket. The screen shows the code field the answer issued; its action logInWithCode(code) submits the received code, applies the session the accepted answer carries and continues the process into the logged-in launch — whose 451 build ends on the location-permission splash after an account recovery, so the action's result is the feed or that splash. The code input itself is not modelled beyond that: no capture shows a request from it, and no capture has a successful submit answer (the test pins a synthetic one).

    Account recovery authentication confirmation