Skip to content

[Bug]: gateway health drops live runtime state and doctor warns for disabled allowlist channels #32689

@dorukardahan

Description

@dorukardahan

Summary

I updated OpenClaw on my VPS to 2026.3.2 and saw two false reports around channel state. The gateway health snapshot drops live runtime fields, and the doctor empty-allowlist scan still evaluates channels/accounts that are explicitly disabled.

Actual behavior

  • openclaw channels status --json shows Slack as configured and running, but openclaw health --json can still return:
    • botTokenSource: "none"
    • appTokenSource: "none"
    • running: false
  • Gateway startup can print this warning even when WhatsApp is disabled:
    • channels.whatsapp.groupPolicy is "allowlist" but groupAllowFrom (and allowFrom) is empty
  • On my VPS I saw the health mismatch and the warning at the same time while Slack Socket Mode was already connected.

Expected behavior

  • openclaw health --json should reflect the live runtime snapshot for channel/account state that already exists in the running gateway.
  • Doctor should skip disabled channels/accounts when checking empty allowlist warnings.

Repro notes

  1. Update to 2026.3.2.
  2. Use a config with Slack enabled and configured, and WhatsApp set to enabled: false.
  3. Start or restart openclaw-gateway.
  4. Compare openclaw channels status --json with openclaw health --json.
  5. Check startup logs for doctor warnings.

Environment:

  • Linux VPS
  • systemd --user gateway service
  • Slack enabled from config
  • WhatsApp disabled in config

Proposed fix

  • Overlay the gateway runtime snapshot onto the refreshed health cache before serving/broadcasting health.
  • Skip disabled channels/accounts in detectEmptyAllowlistPolicy().
  • I have a patch ready and will open a PR linked to this issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions