zellij-org/zellij · error · anyhow::Error

Unknown HostTerminalThemeIndication: {}

Error message

Unknown HostTerminalThemeIndication: {}

What it means

Error "Unknown HostTerminalThemeIndication: {}" thrown in zellij-org/zellij.

Source

Thrown at zellij-utils/src/ipc/protobuf_conversion.rs:324

                    pane_ids: pane_ids?,
                    scrollback: msg.scrollback.map(|s| s as usize),
                    ansi: msg.ansi,
                })
            },
            Some(client_to_server_msg::Message::DesktopNotificationResponse(msg)) => {
                Ok(ClientToServerMsg::DesktopNotificationResponse {
                    raw_bytes: msg.raw_bytes,
                })
            },
            Some(client_to_server_msg::Message::ForwardedReplyFromHost(msg)) => {
                Ok(ClientToServerMsg::ForwardedReplyFromHost {
                    token: msg.token,
                    reply_bytes: msg.reply_bytes,
                })
            },
            Some(client_to_server_msg::Message::HostTerminalThemeChanged(msg)) => {
                let proto_mode = ProtoHostTerminalThemeIndication::try_from(msg.mode)
                    .ok()
                    .ok_or_else(|| anyhow!("Unknown HostTerminalThemeIndication: {}", msg.mode))?;
                Ok(ClientToServerMsg::HostTerminalThemeChanged {
                    mode: proto_mode.into(),
                })
            },
            Some(client_to_server_msg::Message::SoftKeyboardVisibilityChanged(msg)) => {
                Ok(ClientToServerMsg::SoftKeyboardVisibilityChanged {
                    visible: msg.visible,
                })
            },
            Some(client_to_server_msg::Message::NestedSessionFrameFromHost(msg)) => {
                Ok(ClientToServerMsg::NestedSessionFrameFromHost {
                    payload_bytes: msg.payload_bytes,
                })
            },
            Some(client_to_server_msg::Message::KittyGraphicsSupport(msg)) => {
                Ok(ClientToServerMsg::KittyGraphicsSupport {
                    supported: msg.supported,

View on GitHub (pinned to e839bfffa5)

Solutions

  1. Validate the value against the allowed enum range before constructing the message.
  2. Ensure client and server use matching protobuf definitions; regenerate bindings if versions differ.

When it happens

Trigger: Occurs when a protobuf enum value received over IPC has no matching variant; conversion rejects the unknown value.

Common situations: Typical of version skew between client and server, or a malformed/corrupted IPC message.


AI-assisted analysis of zellij-org/zellij@e839bfffa5 (2026-08-19). Data as JSON: /api/errors/70ebfbc05d7107bb. Report an issue: GitHub.