tinyhumansai/openhuman · error

Signal HTTP client should build

Error message

Signal HTTP client should build

What it means

Panic payload on reqwest::Client::builder().build() when constructing SignalChannel::with_http_client from CLI config: the builder (10s connect timeout plus runtime proxy settings) failed to produce a client. Because this happens during channel construction from static config, the process aborts rather than starting with a half-configured Signal channel.

Source

Thrown at src/openhuman/channels/commands.rs:119

        );
    }

    if let Some(ref sig) = config.channels_config.signal {
        channels.push((
            "Signal",
            Arc::new(SignalChannel::with_http_client(
                sig.http_url.clone(),
                sig.account.clone(),
                sig.group_id.clone(),
                sig.allowed_from.clone(),
                sig.ignore_attachments,
                sig.ignore_stories,
                crate::openhuman::config::apply_runtime_proxy_to_builder(
                    reqwest::Client::builder().connect_timeout(std::time::Duration::from_secs(10)),
                    "channel.signal",
                )
                .build()
                .expect("Signal HTTP client should build"),
            )),
        ));
    }

    if let Some(ref wa) = config.channels_config.whatsapp {
        // Runtime negotiation: detect backend type from config
        match wa.backend_type() {
            "cloud" => {
                // Cloud API mode: requires phone_number_id, access_token, verify_token
                if wa.is_cloud_config() {
                    channels.push((
                        "WhatsApp",
                        Arc::new(WhatsAppChannel::with_http_client(
                            wa.access_token.clone().unwrap_or_default(),
                            wa.phone_number_id.clone().unwrap_or_default(),
                            wa.verify_token.clone().unwrap_or_default(),
                            wa.allowed_numbers.clone(),
                            crate::openhuman::config::build_runtime_proxy_client(

View on GitHub (pinned to 7491200858)

Solutions

  1. Check the configured proxy settings ([network]/runtime proxy) for a malformed URL
  2. Verify TLS backend availability in this build
  3. Use .build().map_err(...) instead of expect so a client failure degrades to skipping the Signal channel
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at src/openhuman/channels/commands.rs:119 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17). Data as JSON: /api/errors/724d3d556060ab59. Report an issue: GitHub.