← NEWS DESK
operator digest

OpenClaw Main Fixes Duplicate iMessages, Lost Media Paths and Teams Thread Drift

Three merged delivery fixes stop delayed iMessage fallback from prompting retries, preserve media paths containing spaces and keep structured Teams replies in their thread.

Independent reporting and tested guidance for OpenClaw operators · Editorial standards

OpenClaw has merged three message-delivery fixes covering different forms of false failure: an iMessage could be delivered after OpenClaw timed out and then be sent again, a valid local media path containing spaces could be split into nonexistent attachments, and structured Microsoft Teams replies could land at channel top level instead of inside the requested thread.

These changes are on main, not necessarily in the package an operator runs. Treat adoption as a delivery-semantics change and test with disposable recipients, harmless files and a staging Teams channel.

iMessage: provider completion must outlive the fallback stall

PR #110853 covers imsg delivery when its private bridge stalls and AppleScript fallback completes later. OpenClaw could report timeout to the calling agent even though fallback ultimately delivered the message. A reasonable retry then created a duplicate.

The merged path keeps ownership of the fallback result long enough to resolve the send once and preserves a minimum timeout floor. The operator lesson is not “never retry”: it is that a retry policy must distinguish authoritative failure from a caller-side deadline that may leave provider work alive.

After upgrading, delay the fallback in a supported fixture beyond the original fast path, use a unique harmless marker and prove the recipient sees exactly one message. Capture provider-visible identity where available. Do not test duplicate suppression against a real customer conversation.

MEDIA: paths with spaces remain one attachment

PR #112464 fixes legacy final replies containing an unquoted MEDIA: local pathname with spaces. The parser could split one valid path into several nonexistent items, silently losing delivery.

This is a compatibility repair, not permission to build ambiguous output. New integrations should use the current structured media contract or quote paths where the supported format requires it. The fixed legacy path matters because agents and older adapters can still emit it.

Acceptance should use a disposable file named with multiple spaces and a second control file without spaces. Confirm the first is delivered as one attachment, not several path fragments, and that surrounding assistant text is unchanged. Avoid filenames or media containing private information.

Teams structured replies retain thread context

PR #117516 fixes polls, presentation cards and Adaptive Cards sent as replies in Microsoft Teams channel threads. The proactive structured-send context did not consistently preserve the requested thread target, so the card could appear at channel top level.

Wrong-thread delivery is more than cosmetic. It can expose a response to a wider audience, detach an approval card from its discussion or make an automation believe a workflow was updated when participants cannot find it.

Test each enabled structured type in a staging channel with at least two concurrent threads. Verify the card appears only in the intended thread and ordinary top-level sends remain top level. Record opaque thread and activity IDs rather than copying sensitive message bodies into evidence.

Safe rollout

  1. identify the first release or exact revision containing each relevant PR;
  2. stage only the channels you operate;
  3. force the iMessage delayed-fallback boundary and assert exactly-once recipient visibility;
  4. deliver a synthetic media file whose local path contains spaces;
  5. send each supported Teams structured payload into one of two active test threads;
  6. inspect both provider-visible placement and OpenClaw’s reported result; and
  7. keep existing retry controls until the new behaviour is proven—then tune them deliberately rather than removing them globally.

If older deployments may have hit these faults, reconcile outbound records against provider-visible messages before replaying anything. A local timeout is not evidence that no recipient saw the message.

Evidence and limits

The official merged PR and commit records in the supplied repository packet establish the reported faults and corrections. Direct GitHub page extraction was unavailable and independent web search was blocked by provider credits. OpenClaw Academy did not send a live iMessage or Teams card and did not exercise an upstream media parser.

Bottom line

Delivery succeeds only when content, destination and completion agree. OpenClaw main now handles three cases where one of those facts drifted: late iMessage completion, a space-containing media pathname and a Teams thread target.

Adopt a containing build through staging and prove recipient-visible exactly-once delivery and exact placement. A green local send result by itself is not enough.

THE RECEIPTS

Claims should survive the click.

Primary links used for this article are listed openly. If the evidence changes, the verification date changes with it.
  1. 01Prevent duplicate iMessages after delayed sends — PR #110853
  2. 02Keep an unquoted MEDIA path with spaces as one item — PR #112464
  3. 03Keep structured Microsoft Teams sends in channel threads — PR #117516

THE OPERATOR BRIEF

One useful email when the signal earns it.

Release impact, security changes and repository intelligence. No daily sludge.