openclaw/extensions
Ryan Haines 75a9ea004b
Fix BlueBubbles DM history backfill bug (#20302)
* feat: implement DM history backfill for BlueBubbles

- Add fetchBlueBubblesHistory function to fetch message history from API
- Modify processMessage to fetch history for both groups and DMs
- Use dmHistoryLimit for DMs and historyLimit for groups
- Add InboundHistory field to finalizeInboundContext call

Fixes #20296

* style: format with oxfmt

* address review: in-memory history cache, resolveAccount try/catch, include is_from_me

- Wrap resolveAccount in try/catch instead of unreachable guard (it throws)
- Include is_from_me messages with 'me' sender label for full conversation context
- Add in-memory rolling history map (chatHistories) matching other channel patterns
- API backfill only on first message per chat, not every incoming message
- Remove unused buildInboundHistoryFromEntries import

* chore: remove unused buildInboundHistoryFromEntries helper

Dead code flagged by Greptile — mapping is done inline in
monitor-processing.ts.

* BlueBubbles: harden DM history backfill state handling

* BlueBubbles: add bounded exponential backoff and history payload guards

* BlueBubbles: evict merged history keys

* Update extensions/bluebubbles/src/monitor-processing.ts

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

---------

Co-authored-by: Ryan Mac Mini <ryanmacmini@ryans-mac-mini.tailf78f8b.ts.net>
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-02-21 20:00:09 -05:00
..
bluebubbles Fix BlueBubbles DM history backfill bug (#20302) 2026-02-21 20:00:09 -05:00
copilot-proxy fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
device-pair Security: disable plugin runtime command execution primitive (#20828) 2026-02-19 10:17:29 +00:00
diagnostics-otel fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
discord fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
feishu fix: enforce strict allowlist across pairing stores (#23017) 2026-02-22 00:00:23 +01:00
google-antigravity-auth fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
google-gemini-cli-auth fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
googlechat fix: enforce strict allowlist across pairing stores (#23017) 2026-02-22 00:00:23 +01:00
imessage fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
irc fix: enforce strict allowlist across pairing stores (#23017) 2026-02-22 00:00:23 +01:00
line fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
llm-task fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
lobster fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
matrix fix: enforce strict allowlist across pairing stores (#23017) 2026-02-22 00:00:23 +01:00
mattermost fix: enforce strict allowlist across pairing stores (#23017) 2026-02-22 00:00:23 +01:00
memory-core fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
memory-lancedb fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
minimax-portal-auth fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
msteams fix: enforce strict allowlist across pairing stores (#23017) 2026-02-22 00:00:23 +01:00
nextcloud-talk fix: enforce strict allowlist across pairing stores (#23017) 2026-02-22 00:00:23 +01:00
nostr fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
open-prose fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
phone-control style: align formatting with oxfmt 0.33 2026-02-18 01:34:35 +00:00
qwen-portal-auth TypeScript: add extensions to tsconfig and fix type errors (#12781) 2026-02-09 10:05:38 -08:00
shared refactor(extensions): dedupe connector helper usage 2026-02-16 14:59:30 +00:00
signal fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
slack fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
synology-chat feat(channels): add Synology Chat native channel (#23012) 2026-02-22 00:09:58 +01:00
talk-voice Gateway/Plugins: device pairing + phone control plugins (#11755) 2026-02-08 18:07:13 +01:00
telegram fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
thread-ownership test(extensions): cast fetch mocks to satisfy tsgo 2026-02-16 21:25:35 -05:00
tlon fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
twitch fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
voice-call fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
whatsapp fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00
zalo fix: enforce inbound media max-bytes during remote fetch 2026-02-21 23:02:29 +01:00
zalouser fix(ci): sync plugin versions and harden install smoke 2026-02-21 20:18:37 +01:00