Skip to content

Cron delivery fails with 'Unknown Channel' when multiple channels configured #57491

@hazy2go

Description

@hazy2go

Summary

Cron jobs with delivery.mode: announce fail to deliver results via Discord DM when both Telegram and Discord channels are enabled.

Environment

  • OpenClaw version: 2026.3.28 (f9b1079)
  • macOS, launchd gateway
  • Channels: Discord + Telegram both enabled

Reproduction

  1. Have both channels.discord and channels.telegram enabled in config
  2. Create a cron job with announce delivery:
    openclaw cron edit <id> --announce --channel discord --to "user:339338572354158602"
    
  3. Run the job: openclaw cron run <id>
  4. Job completes but delivery fails

Observed Behavior

Error alternates between two messages depending on config:

  1. With --channel discord or --channel discord:default:

    Error: Unknown Channel
    
  2. With --channel last:

    Channel is required when multiple channels are configured: telegram, discord
    Set delivery.channel explicitly or use a main session with a previous channel.
    

Expected Behavior

--channel discord --to "user:<id>" should resolve correctly and deliver to the Discord DM.

Workaround

Using --no-deliver (silent mode) works. The job runs fine, just no delivery.

Notes

  • Delivery worked in earlier versions (pre-2026.3.28)
  • The isolated cron session appears unable to resolve the channel reference even with explicit config
  • Single-account mode (no accounts: block in discord config)

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