Files
openclaw/docs/channels
Omar Shahine 1f70394e7b fix(imessage): match WhatsApp's per-group systemPrompt resolution semantic
Earlier draft used a simple normalize-and-fall-through resolver: any
empty/whitespace per-chat_id systemPrompt fell through to the
groups['*'] wildcard. That doesn't match the WhatsApp resolver
(extensions/whatsapp/src/system-prompt.ts), where defining the
systemPrompt key on the specific group (even as '') means 'this group
has no prompt' and suppresses the wildcard.

Make iMessage resolution byte-identical:
- specific != null && specific.systemPrompt != null -> use the trimmed
  specific (empty trim -> undefined, wildcard suppressed).
- otherwise -> trimmed wildcard.

Add the resolver as a small exported helper resolveIMessageGroupSystemPrompt
so the unit tests cover it directly. Update the per-group systemPrompt
doc section in docs/channels/imessage.md to copy WhatsApp's resolution
hierarchy language and add an explicit-suppression example.

Refs #78285.
2026-05-09 01:02:12 +00:00
..
2026-05-01 23:58:52 +01:00