IGPAPI
    Preparing search index...

    Type Alias RegistrationOutcome

    RegistrationOutcome:
        | {
            _tag: "PartiallyCreated";
            partialAccount: RegistrationPartialAccountState;
            rawResponse: unknown;
            username: string;
        }
        | { _tag: "ChallengeRequired"; account: RegisteredAccount }
        | {
            _tag: "Created";
            account: RegisteredAccount;
            firstScreen: AppFirstScreen;
        }

    The three terminal outcomes of registration, as the server decided them:

    • PartiallyCreated — the account exists but the server issued no session, and its answer carried no completion state. agree() completes a partial answer that carries reg_info itself, so this variant reaches a caller only when it does not; there is no session and no launch, and the caller follows the challenge branch, as the recorded app does.
    • ChallengeRequired — the account exists, but the user is inactive and the recorded app enters the UFAC challenge; the process is not launched, and the challenge flow is its own vertical.
    • Created — the account is active; the final action ran the platform's recorded launch and this is the screen it leaves on top.