Skip to content

No UI feedback for Lemonade model download, busy state, or connection loss #588

@itomek-amd

Description

@itomek-amd

Problem

GAIA has no mechanism to communicate Lemonade's internal state to the user. This creates three distinct failure experiences that all look the same — a generic error — when the underlying causes and correct user actions are completely different.

Observed Behaviour

  1. Model still downloading — Lemonade shows ~90% progress internally, but GAIA displays "No model loaded" in the top-right corner. Sending a query results in GAIA spinning on "Thinking…", flashing "Cannot connect to GAIA agent" briefly, then eventually returning: "I wasn't able to generate a response, please make sure Lemonade server is running and try again." The message is inaccurate — Lemonade IS running, it's just not ready yet.

  2. Lemonade busy / warming up — When Lemonade is busy loading or processing, GAIA gives no indication of this. The user sees a generic connection error with no context.

  3. Genuine connection loss — Currently indistinguishable from cases 1 and 2 above.

Expected Behaviour

GAIA should surface Lemonade's state with distinct, accurate messaging for each case:

Lemonade State Desired GAIA UI Response
Model downloading Status indicator: "Downloading model… (X%)" — disable input or show soft warning
Model loading into memory Status indicator: "Loading model, almost ready…"
Lemonade busy / slow first response "Model is warming up, this may take a moment…" instead of an error
Genuine connection loss Clear error: "Cannot reach Lemonade. Is it running?" with retry option
Timeout during download "Model is still downloading. Please wait until Lemonade is ready before sending a query."

Proposed Approach

  1. Poll Lemonade's status endpoint (if available) on startup and surface download/load progress in the GAIA status bar
  2. Distinguish timeout errors by checking Lemonade availability before surfacing a user-facing error — if Lemonade responds but the model isn't ready, show the appropriate waiting state rather than a failure
  3. Disable or soft-lock the chat input while the model is not yet ready, with a clear explanation why

Impact

  • First-run experience is broken — new users will think GAIA is broken when the model is simply still downloading
  • No path to self-serve recovery — the current error message tells users to check if Lemonade is running, which is correct advice for connection loss but wrong advice for a download-in-progress
  • Affects all platforms on first install

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingdomain:surfacesAgent UI, Telegram, WhatsApp, Slack/Discord, mobilep1medium prioritytrack:consumer-appHermes-competitor consumer product — mobile-first, voice + messaging + memory + skills

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions