@ai-matrx/messaging 0.10.3 → 0.10.5

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/CHANGELOG.md CHANGED
@@ -1,5 +1,30 @@
1
1
  # Changelog — `@ai-matrx/messaging`
2
2
 
3
+ ## 0.10.5 — 2026-09-09
4
+
5
+ ### Fixed
6
+
7
+ - Membership and new-conversation realtime refresh failures now reach the engine diagnostic
8
+ handler with their original permission classification instead of escaping as unhandled
9
+ promises. Inbox reads do not start after disposal, and late completions do not update the
10
+ disposed engine's store.
11
+
12
+ ### Consumer action (C28)
13
+
14
+ Upgrade the package. No host API changes or database permission changes.
15
+
16
+ ## 0.10.4 — 2026-09-08
17
+
18
+ ### Fixed
19
+
20
+ - Message-level Reply controls retain their compact 24px desktop treatment but expose the full
21
+ 44px package touch target at phone widths. The visible icon is unchanged; the interactive
22
+ control no longer violates the mobile tap floor.
23
+
24
+ ### Consumer action (C28)
25
+
26
+ None. Upgrade to receive the responsive message-action target.
27
+
3
28
  ## 0.10.3 — 2026-09-08
4
29
 
5
30
  ### Fixed
package/dist/index.cjs CHANGED
@@ -1280,7 +1280,9 @@ function createMessagingEngine(options) {
1280
1280
  openChannels.get(message.conversationId)?.send(MESSAGING_EVENTS.message, message);
1281
1281
  }
1282
1282
  async function reloadInbox() {
1283
+ if (disposed) return;
1283
1284
  const page = await repository.listConversations({ limit: conversationPageSize });
1285
+ if (disposed) return;
1284
1286
  conversationCursor = page.nextCursor;
1285
1287
  store.setConversations(page.items, page.hasMore);
1286
1288
  }
@@ -1325,7 +1327,7 @@ function createMessagingEngine(options) {
1325
1327
  const message = projectMessage(row, identity.organizationId);
1326
1328
  const known = store.snapshot().conversations.some((item) => item.conversation.id === message.conversationId);
1327
1329
  if (!known) {
1328
- void reloadInbox();
1330
+ void reloadInbox().catch((error) => reportError(error, "inboxRefresh"));
1329
1331
  return;
1330
1332
  }
1331
1333
  store.ingest(message);
@@ -1341,7 +1343,7 @@ function createMessagingEngine(options) {
1341
1343
  filter: `user_id=eq.${identity.userId}`,
1342
1344
  rowId: (row) => typeof row["id"] === "string" ? row["id"] : void 0,
1343
1345
  onChange: () => {
1344
- void reloadInbox();
1346
+ void reloadInbox().catch((error) => reportError(error, "inboxRefresh"));
1345
1347
  }
1346
1348
  }
1347
1349
  ],