Skip to content

Google Chat: conversation metadata and cron announce payloads rendered as visible messages #23971

@dmorris0917

Description

@dmorris0917

Bug Description

When using Google Chat as the channel surface, internal context that should be invisible to the user is being rendered as visible messages in the chat.

Two related issues observed:

1. Conversation metadata leaking into chat

The Conversation info (untrusted metadata): JSON block (message_id, sender) is being displayed as visible text in Google Chat. This metadata is injected by OpenClaw for the agent's consumption and should never be rendered to the user.

Screenshot shows: A message appearing in chat with the raw Human: Conversation info (untrusted metadata): { "message_id": ..., "sender": ... } prefix visible, followed by the user's actual message text. The user confirmed they did not type this — it appears to be the full agent input context being echoed back.

2. Cron announce results rendered with internal system framing

When cron jobs have --announce/--deliver enabled, the full system message payload (including stats, session IDs, and the instruction block "A completed cron job is ready for user delivery...") is rendered in Google Chat as a visible message.

Expected: Only the agent's reformulated response should appear in chat, not the raw system message.

Steps to Reproduce

  1. Configure OpenClaw with Google Chat channel
  2. Have a cron job with --deliver / --announce enabled
  3. Observe that the full system message payload appears in Google Chat, including:
    • Stats: runtime Xs • tokens X (in X / out X) • prompt/cache Xk
    • A completed cron job is ready for user delivery...
    • Session IDs and internal routing metadata

For the metadata issue:

  1. Send a message to the agent via Google Chat
  2. When the agent responds, sometimes the full Human: turn (including conversation metadata) appears as a new visible message

Environment

  • OpenClaw 2026.2.19-2
  • Channel: Google Chat (googlechat)
  • Chat type: Direct message space

Workaround

Disabled --deliver on noisy cron jobs (openclaw cron edit <id> --no-deliver). No workaround for the metadata echo issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    staleMarked as stale due to inactivity

    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