Skip to content

[BUG] delivery.mode = "none" incorrectly reports "not-delivered" instead of "not-requested" #44533

@WaMaSeDu

Description

@WaMaSeDu

Bug type

Behavior bug (incorrect output/state without crash)

Summary

When delivery.mode = "none" is set in a cron job config, the system incorrectly reports lastDeliveryStatus: "not-delivered" instead of "not-requested".

Steps to reproduce

  1. Create a cron job with delivery: { mode: "none" }
  2. Wait for job to run
  3. Check lastDeliveryStatus

Expected behavior

Expected: "not-requested" (or similar non-failure state)

Actual behavior

Actual: "not-delivered"

OpenClaw version

2026.3.8

Operating system

Windows Server 2022

Install method

npm global

Model

minimax/MiniMax-M2.5

Provider / routing chain

openclaw → cloudflare-ai-gateway → minimax

Config file / key location

Jobs configured via openclaw cron add with delivery: { mode: "none" }

Additional provider/model setup details

No response

Logs, screenshots, and evidence

Cron job: digest-generator
delivery: { mode: "none" }
lastDeliveryStatus: "not-delivered"  ← WRONG

The delivery was NOT requested, so status should NOT be "not-delivered".

Impact and severity

  • Affected: Users with cron jobs using delivery.mode = "none"
  • Severity: Medium (telemetry only, no functional impact)
  • Frequency: 100% - always shows wrong status
  • Consequence: False "failed" alerts, confusing health reports

Additional information

Root cause: Code checks legacy payload.deliver field instead of new payload.delivery.mode.

Proposed fix:

const deliveryMode =
    payload?.delivery?.mode ??
    (payload?.deliver === true ? "announce"
    : payload?.deliver === false ? "none"
    : "auto");

Test cases:

Input Expected
{ delivery: { mode: "none" }, to: "123" } "not-requested"
{ delivery: { mode: "announce" } } + send fails "not-delivered"

This preserves real failure detection while fixing false telemetry.

github-issue-delivery-mode-bug.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingbug:behaviorIncorrect behavior without a crash

    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