Merged upstreamCorrectnessMerged Jun 16, 2026
Preserve Mattermost Codex progress previews
Restored Mattermost in-flight Codex progress previews while keeping source-suppressed final delivery unchanged.
openclaw/openclaw · #93476
Problem
Mattermost runs could deliver the final Codex response correctly while losing draft progress updates during tool-heavy execution because shared dispatch suppressed callbacks whenever source delivery was suppressed.
Approach
Threaded a Mattermost-specific progress-callback opt-in through inbound dispatch only when draft tool-progress preview is enabled, preserving final delivery policy and non-Mattermost behavior.
Impact and scope
- Improves Mattermost operator experience by restoring visible progress during long Codex tool and reasoning runs.
- Keeps final reply ownership unchanged, avoiding accidental source-owned final messages while allowing channel-owned draft progress.
- Limits blast radius with a Mattermost preview-mode gate instead of changing shared dispatch defaults.
Validation
- Added Mattermost config and inbound system-event regressions for the source-suppressed progress callback gate.
- Verified the draft stream still receives progress content while final delivery remains unchanged.
- PR validation covered focused Vitest runs, oxlint, tsdown build, diff check, and local autoreview.