@openclaw/bluebubbles 2026.2.24 → 2026.2.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openclaw/bluebubbles",
3
- "version": "2026.2.24",
3
+ "version": "2026.2.25",
4
4
  "description": "OpenClaw BlueBubbles channel plugin",
5
5
  "type": "module",
6
6
  "openclaw": {
@@ -7,8 +7,7 @@ import {
7
7
  logTypingFailure,
8
8
  recordPendingHistoryEntryIfEnabled,
9
9
  resolveAckReaction,
10
- resolveDmGroupAccessDecision,
11
- resolveEffectiveAllowFromLists,
10
+ resolveDmGroupAccessWithLists,
12
11
  resolveControlCommandGate,
13
12
  stripMarkdown,
14
13
  type HistoryEntry,
@@ -504,24 +503,13 @@ export async function processMessage(
504
503
  const storeAllowFrom = await core.channel.pairing
505
504
  .readAllowFromStore("bluebubbles")
506
505
  .catch(() => []);
507
- const { effectiveAllowFrom, effectiveGroupAllowFrom } = resolveEffectiveAllowFromLists({
508
- allowFrom: account.config.allowFrom,
509
- groupAllowFrom: account.config.groupAllowFrom,
510
- storeAllowFrom,
511
- dmPolicy,
512
- });
513
- const groupAllowEntry = formatGroupAllowlistEntry({
514
- chatGuid: message.chatGuid,
515
- chatId: message.chatId ?? undefined,
516
- chatIdentifier: message.chatIdentifier ?? undefined,
517
- });
518
- const groupName = message.chatName?.trim() || undefined;
519
- const accessDecision = resolveDmGroupAccessDecision({
506
+ const accessDecision = resolveDmGroupAccessWithLists({
520
507
  isGroup,
521
508
  dmPolicy,
522
509
  groupPolicy,
523
- effectiveAllowFrom,
524
- effectiveGroupAllowFrom,
510
+ allowFrom: account.config.allowFrom,
511
+ groupAllowFrom: account.config.groupAllowFrom,
512
+ storeAllowFrom,
525
513
  isSenderAllowed: (allowFrom) =>
526
514
  isAllowedBlueBubblesSender({
527
515
  allowFrom,
@@ -531,6 +519,14 @@ export async function processMessage(
531
519
  chatIdentifier: message.chatIdentifier ?? undefined,
532
520
  }),
533
521
  });
522
+ const effectiveAllowFrom = accessDecision.effectiveAllowFrom;
523
+ const effectiveGroupAllowFrom = accessDecision.effectiveGroupAllowFrom;
524
+ const groupAllowEntry = formatGroupAllowlistEntry({
525
+ chatGuid: message.chatGuid,
526
+ chatId: message.chatId ?? undefined,
527
+ chatIdentifier: message.chatIdentifier ?? undefined,
528
+ });
529
+ const groupName = message.chatName?.trim() || undefined;
534
530
 
535
531
  if (accessDecision.decision !== "allow") {
536
532
  if (isGroup) {
@@ -1389,18 +1385,13 @@ export async function processReaction(
1389
1385
  const storeAllowFrom = await core.channel.pairing
1390
1386
  .readAllowFromStore("bluebubbles")
1391
1387
  .catch(() => []);
1392
- const { effectiveAllowFrom, effectiveGroupAllowFrom } = resolveEffectiveAllowFromLists({
1393
- allowFrom: account.config.allowFrom,
1394
- groupAllowFrom: account.config.groupAllowFrom,
1395
- storeAllowFrom,
1396
- dmPolicy,
1397
- });
1398
- const accessDecision = resolveDmGroupAccessDecision({
1388
+ const accessDecision = resolveDmGroupAccessWithLists({
1399
1389
  isGroup: reaction.isGroup,
1400
1390
  dmPolicy,
1401
1391
  groupPolicy,
1402
- effectiveAllowFrom,
1403
- effectiveGroupAllowFrom,
1392
+ allowFrom: account.config.allowFrom,
1393
+ groupAllowFrom: account.config.groupAllowFrom,
1394
+ storeAllowFrom,
1404
1395
  isSenderAllowed: (allowFrom) =>
1405
1396
  isAllowedBlueBubblesSender({
1406
1397
  allowFrom,