@openclaw/matrix 2026.5.31-beta.3 → 2026.6.1-beta.1

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.
Files changed (47) hide show
  1. package/dist/api.js +4 -4
  2. package/dist/{approval-handler.runtime-SX-BFhX_.js → approval-handler.runtime-CzuSSYKB.js} +4 -4
  3. package/dist/{approval-ids-CXPPSyAr.js → approval-ids-DclE17FF.js} +1 -1
  4. package/dist/{approval-reaction-auth-m-11_ajL.js → approval-reaction-auth-EVeOTYxE.js} +2 -2
  5. package/dist/{channel--XqVgFZK.js → channel-8WZPKRKE.js} +9 -9
  6. package/dist/channel-plugin-api.js +1 -1
  7. package/dist/{channel.runtime-CUBxoFwA.js → channel.runtime-DI-GooXD.js} +6 -6
  8. package/dist/{cli-CaF5tlL-.js → cli-DtamlyMf.js} +11 -14
  9. package/dist/{cli-metadata-gFTG9oJL.js → cli-metadata-Cf07R_gl.js} +1 -1
  10. package/dist/cli-metadata.js +1 -1
  11. package/dist/{client-D-t6CdHz.js → client-BT3pHI8c.js} +2 -2
  12. package/dist/{client-spaouc7I.js → client-D8mT5W6r.js} +2 -2
  13. package/dist/{client-bootstrap-DOlQb7Jx.js → client-bootstrap-B0wcXXlD.js} +1 -1
  14. package/dist/{config-schema-DfjBrYch.js → config-schema-BKGAVlax.js} +1 -1
  15. package/dist/contract-api.js +3 -3
  16. package/dist/{create-client-B4CPKa5P.js → create-client-D4x1reLU.js} +3 -3
  17. package/dist/{crypto-runtime-3hgwY-d6.js → crypto-runtime-C6v1fiVu.js} +14 -7
  18. package/dist/{directory-live-DgjzYeC_.js → directory-live-D0OsjRmq.js} +2 -2
  19. package/dist/{draft-stream-eaBWrjVK.js → draft-stream-B7lCkUfU.js} +1 -1
  20. package/dist/index.js +1 -1
  21. package/dist/{legacy-crypto-restore--9Wu5rsx.js → legacy-crypto-restore-CbVSppMd.js} +2 -2
  22. package/dist/{logging-C7wjdKK5.js → logging-6apMqI4e.js} +1 -1
  23. package/dist/{media-text-C2Wor3Gj.js → media-text-DxT-tkdx.js} +1 -1
  24. package/dist/{messages-D0sumPNx.js → messages-CnMMyKaw.js} +3 -3
  25. package/dist/{monitor-BMksz3hx.js → monitor-Y8rwS-7u.js} +81 -71
  26. package/dist/plugin-entry.handlers.runtime.js +1 -1
  27. package/dist/probe.runtime-BRG4lO-g.js +3 -0
  28. package/dist/{profile-update-Defy1W90.js → profile-update-CdrpnVB1.js} +2 -2
  29. package/dist/{reaction-events-Bh2u-_9j.js → reaction-events-BWDww7_l.js} +1 -1
  30. package/dist/{recovery-key-store-BRnvY8XS.js → recovery-key-store--lhj0He2.js} +1 -1
  31. package/dist/{resolve-targets-CLuzv_Jl.js → resolve-targets-BjEKWSku.js} +1 -1
  32. package/dist/{resolver.runtime-VywXDAZv.js → resolver.runtime-DjAttKeb.js} +1 -1
  33. package/dist/{sdk-C2iC7PJZ.js → sdk-BmcTTd2D.js} +6 -6
  34. package/dist/{send-DHj1E9ji.js → send-BAtT4Rtk.js} +1 -1
  35. package/dist/{setup-bootstrap-kTPKb7jR.js → setup-bootstrap-D3tm10tD.js} +2 -2
  36. package/dist/{setup-core-DRg3cgB8.js → setup-core-CHX8Zcxh.js} +1 -1
  37. package/dist/setup-plugin-api.js +3 -3
  38. package/dist/{setup-surface-soZQLgfu.js → setup-surface-DwudaOZp.js} +4 -4
  39. package/dist/{shared-DjJds8e0.js → shared-D5SFm-Dp.js} +11 -4
  40. package/dist/{startup-verification-CWLSyFen.js → startup-verification-MAPgdkTX.js} +2 -2
  41. package/dist/{storage-Ds-2Iur5.js → storage-DSVcH_zM.js} +1 -1
  42. package/dist/{thread-bindings-DehFUArg.js → thread-bindings-xGy-RpZ_.js} +2 -2
  43. package/dist/{tool-actions.runtime-CU79qJ3e.js → tool-actions.runtime-BaWmHE7Q.js} +6 -6
  44. package/dist/{verification-BJfjKMr8.js → verification-DEaJQn5O.js} +1 -1
  45. package/npm-shrinkwrap.json +3 -3
  46. package/package.json +4 -4
  47. package/dist/probe.runtime-BegszwhP.js +0 -3
package/dist/api.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import { a as resolveMatrixDefaultOrOnlyAccountId, i as resolveMatrixChannelConfig, n as requiresExplicitMatrixDefaultAccount, r as resolveConfiguredMatrixAccountIds, t as findMatrixAccountEntry } from "./account-selection-DEMtY2cn.js";
2
2
  import { n as listMatrixEnvAccountIds, r as resolveMatrixEnvAccountToken, t as getMatrixScopedEnvVarNames } from "./env-vars-KzaYveuy.js";
3
3
  import { a as resolveMatrixCredentialsPath, c as resolveMatrixLegacyFlatStoreRoot, i as resolveMatrixCredentialsFilename, l as sanitizeMatrixPathSegment, n as resolveMatrixAccountStorageRoot, o as resolveMatrixHomeserverKey, r as resolveMatrixCredentialsDir, s as resolveMatrixLegacyFlatStoragePaths, t as hashMatrixAccessToken } from "./storage-paths-BWo_ZEMC.js";
4
- import { n as matrixSetupAdapter, t as createMatrixSetupWizardProxy } from "./setup-core-DRg3cgB8.js";
5
- import { t as matrixPlugin } from "./channel--XqVgFZK.js";
4
+ import { n as matrixSetupAdapter, t as createMatrixSetupWizardProxy } from "./setup-core-CHX8Zcxh.js";
5
+ import { t as matrixPlugin } from "./channel-8WZPKRKE.js";
6
6
  import { d as setMatrixThreadBindingIdleTimeoutBySessionKey, n as getMatrixThreadBindingManager, p as setMatrixThreadBindingMaxAgeBySessionKey, s as resetMatrixThreadBindingsForTests } from "./thread-bindings-shared-CKnY4LSd.js";
7
- import { n as matrixOnboardingAdapter } from "./setup-surface-soZQLgfu.js";
8
- import { t as createMatrixThreadBindingManager } from "./thread-bindings-DehFUArg.js";
7
+ import { n as matrixOnboardingAdapter } from "./setup-surface-DwudaOZp.js";
8
+ import { t as createMatrixThreadBindingManager } from "./thread-bindings-xGy-RpZ_.js";
9
9
  //#region extensions/matrix/api.ts
10
10
  const matrixSessionBindingAdapterChannels = ["matrix"];
11
11
  //#endregion
@@ -1,9 +1,9 @@
1
- import { g as resolveMatrixAccount } from "./setup-core-DRg3cgB8.js";
2
- import { _ as shouldHandleMatrixApprovalRequest, g as isMatrixAnyApprovalClientEnabled } from "./channel--XqVgFZK.js";
1
+ import { g as resolveMatrixAccount } from "./setup-core-CHX8Zcxh.js";
2
+ import { _ as shouldHandleMatrixApprovalRequest, g as isMatrixAnyApprovalClientEnabled } from "./channel-8WZPKRKE.js";
3
3
  import { a as resolveMatrixTargetIdentity } from "./target-ids-B-5aQxwn.js";
4
- import { a as sendMessageMatrix, i as reactMatrixMessage, p as repairMatrixDirectRooms, s as sendSingleTextMessageMatrix } from "./send-DHj1E9ji.js";
4
+ import { a as sendMessageMatrix, i as reactMatrixMessage, p as repairMatrixDirectRooms, s as sendSingleTextMessageMatrix } from "./send-BAtT4Rtk.js";
5
5
  import { a as unregisterMatrixApprovalReactionTarget, n as listMatrixApprovalReactionBindings, r as registerMatrixApprovalReactionTarget, t as buildMatrixApprovalReactionHint } from "./approval-reactions-BRGQgOu2.js";
6
- import { n as editMatrixMessage, t as deleteMatrixMessage } from "./messages-D0sumPNx.js";
6
+ import { n as editMatrixMessage, t as deleteMatrixMessage } from "./messages-CnMMyKaw.js";
7
7
  import { listMessageReceiptPlatformIds, resolveMessageReceiptPrimaryId } from "openclaw/plugin-sdk/channel-outbound";
8
8
  import { normalizeUniqueStringEntries } from "openclaw/plugin-sdk/string-coerce-runtime";
9
9
  import { buildChannelApprovalNativeTargetKey } from "openclaw/plugin-sdk/approval-native-runtime";
@@ -1,4 +1,4 @@
1
- import { a as normalizeMatrixUserId } from "./config-schema-DfjBrYch.js";
1
+ import { a as normalizeMatrixUserId } from "./config-schema-BKGAVlax.js";
2
2
  //#region extensions/matrix/src/approval-ids.ts
3
3
  function normalizeMatrixApproverId(value) {
4
4
  return normalizeMatrixUserId(String(value)) || void 0;
@@ -1,5 +1,5 @@
1
- import { g as resolveMatrixAccount } from "./setup-core-DRg3cgB8.js";
2
- import { t as normalizeMatrixApproverId } from "./approval-ids-CXPPSyAr.js";
1
+ import { g as resolveMatrixAccount } from "./setup-core-CHX8Zcxh.js";
2
+ import { t as normalizeMatrixApproverId } from "./approval-ids-DclE17FF.js";
3
3
  import { resolveApprovalApprovers } from "openclaw/plugin-sdk/approval-auth-runtime";
4
4
  //#region extensions/matrix/src/approval-reaction-auth.ts
5
5
  function normalizeMatrixExecApproverId(value) {
@@ -1,8 +1,8 @@
1
1
  import { n as requiresExplicitMatrixDefaultAccount } from "./account-selection-DEMtY2cn.js";
2
2
  import { c as resolveMatrixAccountConfig } from "./config-paths-ZBCMwSos.js";
3
- import { d as resolveSingleAccountPromotionTarget, f as singleAccountKeysToMove, g as resolveMatrixAccount, h as resolveDefaultMatrixAccountId, n as matrixSetupAdapter, p as listMatrixAccountIds, t as createMatrixSetupWizardProxy, u as namedAccountPromotionKeys } from "./setup-core-DRg3cgB8.js";
4
- import { a as normalizeMatrixUserId, n as DEFAULT_ACCOUNT_ID$2, r as matrixConfigAdapter, t as MatrixChannelConfigSchema } from "./config-schema-DfjBrYch.js";
5
- import { t as normalizeMatrixApproverId } from "./approval-ids-CXPPSyAr.js";
3
+ import { d as resolveSingleAccountPromotionTarget, f as singleAccountKeysToMove, g as resolveMatrixAccount, h as resolveDefaultMatrixAccountId, n as matrixSetupAdapter, p as listMatrixAccountIds, t as createMatrixSetupWizardProxy, u as namedAccountPromotionKeys } from "./setup-core-CHX8Zcxh.js";
4
+ import { a as normalizeMatrixUserId, n as DEFAULT_ACCOUNT_ID$2, r as matrixConfigAdapter, t as MatrixChannelConfigSchema } from "./config-schema-BKGAVlax.js";
5
+ import { t as normalizeMatrixApproverId } from "./approval-ids-DclE17FF.js";
6
6
  import { a as resolveMatrixTargetIdentity, i as resolveMatrixDirectUserId, n as normalizeMatrixMessagingTarget, r as normalizeMatrixResolvableTarget } from "./target-ids-B-5aQxwn.js";
7
7
  import { t as formatMatrixErrorMessage } from "./errors-C47hvAF8.js";
8
8
  import { n as normalizeCompatibilityConfig, t as legacyConfigRules } from "./doctor-contract-D9oKDvsJ.js";
@@ -129,7 +129,7 @@ const matrixMessageActions = {
129
129
  return extractToolSend(args, "sendMessage");
130
130
  },
131
131
  handleAction: async (ctx) => {
132
- const { handleMatrixAction } = await import("./tool-actions.runtime-CU79qJ3e.js");
132
+ const { handleMatrixAction } = await import("./tool-actions.runtime-BaWmHE7Q.js");
133
133
  const { action, params, cfg, accountId, mediaLocalRoots } = ctx;
134
134
  const dispatch = async (actionParams) => await handleMatrixAction({
135
135
  ...actionParams,
@@ -593,7 +593,7 @@ const matrixNativeApprovalCapability = createApproverRestrictedNativeApprovalCap
593
593
  accountId,
594
594
  request
595
595
  }),
596
- load: async () => (await import("./approval-handler.runtime-SX-BFhX_.js")).matrixApprovalNativeRuntime
596
+ load: async () => (await import("./approval-handler.runtime-CzuSSYKB.js")).matrixApprovalNativeRuntime
597
597
  })
598
598
  });
599
599
  const splitMatrixApprovalCapability = splitChannelApprovalCapability(matrixNativeApprovalCapability);
@@ -755,7 +755,7 @@ function resolveMatrixGroupToolPolicy(params) {
755
755
  }
756
756
  //#endregion
757
757
  //#region extensions/matrix/src/resolver.ts
758
- const loadMatrixChannelRuntime$1 = createLazyRuntimeNamedExport(() => import("./resolver.runtime-VywXDAZv.js"), "matrixResolverRuntime");
758
+ const loadMatrixChannelRuntime$1 = createLazyRuntimeNamedExport(() => import("./resolver.runtime-DjAttKeb.js"), "matrixResolverRuntime");
759
759
  const matrixResolverAdapter = { resolveTargets: async ({ cfg, accountId, inputs, kind, runtime }) => (await loadMatrixChannelRuntime$1()).resolveMatrixTargets({
760
760
  cfg,
761
761
  accountId,
@@ -944,8 +944,8 @@ async function runMatrixStartupMaintenance(params) {
944
944
  //#endregion
945
945
  //#region extensions/matrix/src/channel.ts
946
946
  let matrixStartupLock = Promise.resolve();
947
- const loadMatrixSetupWizard = createLazyRuntimeNamedExport(() => import("./setup-surface-soZQLgfu.js").then((n) => n.t), "matrixSetupWizard");
948
- const loadMatrixChannelRuntime = createLazyRuntimeNamedExport(() => import("./channel.runtime-CUBxoFwA.js"), "matrixChannelRuntime");
947
+ const loadMatrixSetupWizard = createLazyRuntimeNamedExport(() => import("./setup-surface-DwudaOZp.js").then((n) => n.t), "matrixSetupWizard");
948
+ const loadMatrixChannelRuntime = createLazyRuntimeNamedExport(() => import("./channel.runtime-DI-GooXD.js"), "matrixChannelRuntime");
949
949
  let matrixDoctorModulePromise = null;
950
950
  const loadMatrixDoctorModule = async () => {
951
951
  matrixDoctorModulePromise ??= import("./doctor-BKjr6uua.js");
@@ -1321,7 +1321,7 @@ const matrixPlugin = createChatChannelPlugin({
1321
1321
  await previousLock;
1322
1322
  let monitorMatrixProvider;
1323
1323
  try {
1324
- monitorMatrixProvider = (await import("./monitor-BMksz3hx.js")).monitorMatrixProvider;
1324
+ monitorMatrixProvider = (await import("./monitor-Y8rwS-7u.js")).monitorMatrixProvider;
1325
1325
  } finally {
1326
1326
  releaseLock();
1327
1327
  }
@@ -1,2 +1,2 @@
1
- import { t as matrixPlugin } from "./channel--XqVgFZK.js";
1
+ import { t as matrixPlugin } from "./channel-8WZPKRKE.js";
2
2
  export { matrixPlugin };
@@ -1,10 +1,10 @@
1
- import { a as sendMessageMatrix, c as sendTypingMatrix, o as sendPollMatrix } from "./send-DHj1E9ji.js";
1
+ import { a as sendMessageMatrix, c as sendTypingMatrix, o as sendPollMatrix } from "./send-BAtT4Rtk.js";
2
2
  import { t as isBunRuntime } from "./runtime-BefyhPWv.js";
3
- import { g as resolveMatrixAuth } from "./shared-DjJds8e0.js";
4
- import "./client-spaouc7I.js";
5
- import { n as listMatrixDirectoryGroupsLive, r as listMatrixDirectoryPeersLive } from "./directory-live-DgjzYeC_.js";
3
+ import { g as resolveMatrixAuth } from "./shared-D5SFm-Dp.js";
4
+ import "./client-D8mT5W6r.js";
5
+ import { n as listMatrixDirectoryGroupsLive, r as listMatrixDirectoryPeersLive } from "./directory-live-D0OsjRmq.js";
6
6
  import { f as resolveOutboundSendDep, n as chunkTextForOutbound } from "./runtime-api-CsBoesCU.js";
7
- import { t as resolveMatrixTargets } from "./resolve-targets-CLuzv_Jl.js";
7
+ import { t as resolveMatrixTargets } from "./resolve-targets-BjEKWSku.js";
8
8
  import { createReplyToFanout } from "openclaw/plugin-sdk/channel-outbound";
9
9
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
10
10
  import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
@@ -13,7 +13,7 @@ import { resolvePayloadMediaUrls } from "openclaw/plugin-sdk/reply-payload";
13
13
  //#region extensions/matrix/src/matrix/probe.ts
14
14
  let matrixProbeRuntimeDepsPromise;
15
15
  async function loadMatrixProbeRuntimeDeps() {
16
- matrixProbeRuntimeDepsPromise ??= import("./probe.runtime-BegszwhP.js").then((runtimeModule) => ({ createMatrixClient: runtimeModule.createMatrixClient }));
16
+ matrixProbeRuntimeDepsPromise ??= import("./probe.runtime-BRG4lO-g.js").then((runtimeModule) => ({ createMatrixClient: runtimeModule.createMatrixClient }));
17
17
  return await matrixProbeRuntimeDepsPromise;
18
18
  }
19
19
  async function probeMatrix(params) {
@@ -1,16 +1,16 @@
1
1
  import { c as resolveMatrixAccountConfig } from "./config-paths-ZBCMwSos.js";
2
2
  import { t as getMatrixRuntime } from "./runtime-6S3DNFNv.js";
3
- import { c as resolveMatrixConfigPath, g as resolveMatrixAccount, l as updateMatrixAccountConfig, n as matrixSetupAdapter } from "./setup-core-DRg3cgB8.js";
3
+ import { c as resolveMatrixConfigPath, g as resolveMatrixAccount, l as updateMatrixAccountConfig, n as matrixSetupAdapter } from "./setup-core-CHX8Zcxh.js";
4
4
  import { t as formatMatrixErrorMessage } from "./errors-C47hvAF8.js";
5
- import { n as withResolvedActionClient } from "./client-D-t6CdHz.js";
6
- import { _ as resolveMatrixAuthContext } from "./shared-DjJds8e0.js";
7
- import "./client-spaouc7I.js";
5
+ import { n as withResolvedActionClient } from "./client-BT3pHI8c.js";
6
+ import { _ as resolveMatrixAuthContext } from "./shared-D5SFm-Dp.js";
7
+ import "./client-D8mT5W6r.js";
8
8
  import { i as formatZonedTimestamp } from "./runtime-api-CsBoesCU.js";
9
9
  import { isOpenClawManagedMatrixDevice, summarizeMatrixDeviceHealth } from "./device-health-D4LBxuPq.js";
10
- import { n as updateMatrixOwnProfile, t as applyMatrixProfileUpdate } from "./profile-update-Defy1W90.js";
11
- import { a as confirmMatrixVerificationSas, b as verifyMatrixRecoveryKey, c as getMatrixRoomKeyBackupStatus, d as listMatrixVerifications, f as mismatchMatrixVerificationSas, g as runMatrixSelfVerification, h as restoreMatrixRoomKeyBackup, l as getMatrixVerificationSas, m as resetMatrixRoomKeyBackup, n as bootstrapMatrixVerification, p as requestMatrixVerification, r as cancelMatrixVerification, t as acceptMatrixVerification, u as getMatrixVerificationStatus, v as startMatrixVerification } from "./verification-BJfjKMr8.js";
10
+ import { n as updateMatrixOwnProfile, t as applyMatrixProfileUpdate } from "./profile-update-CdrpnVB1.js";
11
+ import { a as confirmMatrixVerificationSas, b as verifyMatrixRecoveryKey, c as getMatrixRoomKeyBackupStatus, d as listMatrixVerifications, f as mismatchMatrixVerificationSas, g as runMatrixSelfVerification, h as restoreMatrixRoomKeyBackup, l as getMatrixVerificationSas, m as resetMatrixRoomKeyBackup, n as bootstrapMatrixVerification, p as requestMatrixVerification, r as cancelMatrixVerification, t as acceptMatrixVerification, u as getMatrixVerificationStatus, v as startMatrixVerification } from "./verification-DEaJQn5O.js";
12
12
  import { t as resolveMatrixRoomKeyBackupIssue } from "./backup-health-Dm_YMVFT.js";
13
- import { setMatrixSdkConsoleLogging, setMatrixSdkLogMode } from "./logging-C7wjdKK5.js";
13
+ import { setMatrixSdkConsoleLogging, setMatrixSdkLogMode } from "./logging-6apMqI4e.js";
14
14
  import { normalizeAccountId } from "openclaw/plugin-sdk/account-id";
15
15
  import { parseStrictInteger, timestampMsToIsoString } from "openclaw/plugin-sdk/number-runtime";
16
16
  //#region extensions/matrix/src/matrix/actions/devices.ts
@@ -38,11 +38,11 @@ let matrixCliExitScheduled = false;
38
38
  let matrixActionClientModulePromise;
39
39
  let matrixDirectManagementModulePromise;
40
40
  function loadMatrixActionClientModule() {
41
- matrixActionClientModulePromise ??= import("./client-D-t6CdHz.js").then((n) => n.t);
41
+ matrixActionClientModulePromise ??= import("./client-BT3pHI8c.js").then((n) => n.t);
42
42
  return matrixActionClientModulePromise;
43
43
  }
44
44
  function loadMatrixDirectManagementModule() {
45
- matrixDirectManagementModulePromise ??= import("./send-DHj1E9ji.js").then((n) => n.d);
45
+ matrixDirectManagementModulePromise ??= import("./send-BAtT4Rtk.js").then((n) => n.d);
46
46
  return matrixDirectManagementModulePromise;
47
47
  }
48
48
  function scheduleMatrixCliExit() {
@@ -210,7 +210,7 @@ async function addMatrixAccount(params) {
210
210
  backupVersion: null
211
211
  };
212
212
  if (accountConfig.encryption === true) {
213
- const { maybeBootstrapNewEncryptedMatrixAccount } = await import("./setup-bootstrap-kTPKb7jR.js");
213
+ const { maybeBootstrapNewEncryptedMatrixAccount } = await import("./setup-bootstrap-D3tm10tD.js");
214
214
  verificationBootstrap = await maybeBootstrapNewEncryptedMatrixAccount({
215
215
  previousCfg: cfg,
216
216
  cfg: updated,
@@ -259,10 +259,7 @@ async function addMatrixAccount(params) {
259
259
  error: toErrorMessage(err)
260
260
  };
261
261
  }
262
- let deviceHealth = {
263
- currentDeviceId: null,
264
- staleOpenClawDeviceIds: []
265
- };
262
+ let deviceHealth;
266
263
  try {
267
264
  const addedDevices = await listMatrixOwnDevices({
268
265
  accountId,
@@ -2,7 +2,7 @@ import { definePluginEntry } from "openclaw/plugin-sdk/plugin-entry";
2
2
  //#region extensions/matrix/src/cli-metadata.ts
3
3
  function registerMatrixCliMetadata(api) {
4
4
  api.registerCli(async ({ program }) => {
5
- const { registerMatrixCli } = await import("./cli-CaF5tlL-.js");
5
+ const { registerMatrixCli } = await import("./cli-DtamlyMf.js");
6
6
  registerMatrixCli({ program });
7
7
  }, { descriptors: [{
8
8
  name: "matrix",
@@ -1,2 +1,2 @@
1
- import { n as registerMatrixCliMetadata, t as cli_metadata_default } from "./cli-metadata-gFTG9oJL.js";
1
+ import { n as registerMatrixCliMetadata, t as cli_metadata_default } from "./cli-metadata-Cf07R_gl.js";
2
2
  export { cli_metadata_default as default, registerMatrixCliMetadata };
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { u as resolveMatrixRoomId } from "./send-DHj1E9ji.js";
3
- import { n as withResolvedRuntimeMatrixClient } from "./client-bootstrap-DOlQb7Jx.js";
2
+ import { u as resolveMatrixRoomId } from "./send-BAtT4Rtk.js";
3
+ import { n as withResolvedRuntimeMatrixClient } from "./client-bootstrap-B0wcXXlD.js";
4
4
  //#region extensions/matrix/src/matrix/actions/client.ts
5
5
  var client_exports = /* @__PURE__ */ __exportAll({
6
6
  withResolvedActionClient: () => withResolvedActionClient,
@@ -3,8 +3,8 @@ import { t as getMatrixScopedEnvVarNames } from "./env-vars-KzaYveuy.js";
3
3
  import { i as resolveScopedMatrixEnvConfig, r as resolveMatrixEnvAuthReadiness, t as hasReadyMatrixEnvAuth } from "./env-auth-DIzOApj0.js";
4
4
  import { n as validateMatrixHomeserverUrl, t as resolveValidatedMatrixHomeserverUrl } from "./url-validation-GRHde6lq.js";
5
5
  import { t as isBunRuntime } from "./runtime-BefyhPWv.js";
6
- import { _ as resolveMatrixAuthContext, g as resolveMatrixAuth, h as backfillMatrixAuthDeviceIdAfterStartup, i as resolveSharedMatrixClient, n as releaseSharedClientInstance, o as stopSharedClientForAccount, r as removeSharedClientInstance, s as stopSharedClientInstance, t as acquireSharedMatrixClient, v as resolveMatrixConfigForAccount } from "./shared-DjJds8e0.js";
7
- import { t as createMatrixClient } from "./create-client-B4CPKa5P.js";
6
+ import { _ as resolveMatrixAuthContext, g as resolveMatrixAuth, h as backfillMatrixAuthDeviceIdAfterStartup, i as resolveSharedMatrixClient, n as releaseSharedClientInstance, o as stopSharedClientForAccount, r as removeSharedClientInstance, s as stopSharedClientInstance, t as acquireSharedMatrixClient, v as resolveMatrixConfigForAccount } from "./shared-D5SFm-Dp.js";
7
+ import { t as createMatrixClient } from "./create-client-D4x1reLU.js";
8
8
  //#region extensions/matrix/src/matrix/client.ts
9
9
  var client_exports = /* @__PURE__ */ __exportAll({
10
10
  acquireSharedMatrixClient: () => acquireSharedMatrixClient,
@@ -10,7 +10,7 @@ var client_bootstrap_exports = /* @__PURE__ */ __exportAll({
10
10
  });
11
11
  let matrixSharedClientRuntimeDepsPromise;
12
12
  async function loadMatrixSharedClientRuntimeDeps() {
13
- matrixSharedClientRuntimeDepsPromise ??= Promise.all([import("./client-spaouc7I.js").then((n) => n.t), import("./shared-DjJds8e0.js").then((n) => n.a)]).then(([clientModule, sharedModule]) => ({
13
+ matrixSharedClientRuntimeDepsPromise ??= Promise.all([import("./client-D8mT5W6r.js").then((n) => n.t), import("./shared-D5SFm-Dp.js").then((n) => n.a)]).then(([clientModule, sharedModule]) => ({
14
14
  acquireSharedMatrixClient: clientModule.acquireSharedMatrixClient,
15
15
  resolveMatrixAuthContext: clientModule.resolveMatrixAuthContext,
16
16
  releaseSharedClientInstance: sharedModule.releaseSharedClientInstance
@@ -1,5 +1,5 @@
1
1
  import { c as resolveMatrixAccountConfig } from "./config-paths-ZBCMwSos.js";
2
- import { g as resolveMatrixAccount, h as resolveDefaultMatrixAccountId, p as listMatrixAccountIds } from "./setup-core-DRg3cgB8.js";
2
+ import { g as resolveMatrixAccount, h as resolveDefaultMatrixAccountId, p as listMatrixAccountIds } from "./setup-core-CHX8Zcxh.js";
3
3
  import { adaptScopedAccountAccessor, createScopedChannelConfigAdapter } from "openclaw/plugin-sdk/channel-config-helpers";
4
4
  import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
5
5
  import { DEFAULT_ACCOUNT_ID as DEFAULT_ACCOUNT_ID$1 } from "openclaw/plugin-sdk/account-id";
@@ -1,8 +1,8 @@
1
1
  import { r as setMatrixRuntime } from "./runtime-6S3DNFNv.js";
2
- import { d as resolveSingleAccountPromotionTarget, f as singleAccountKeysToMove, n as matrixSetupAdapter, u as namedAccountPromotionKeys } from "./setup-core-DRg3cgB8.js";
2
+ import { d as resolveSingleAccountPromotionTarget, f as singleAccountKeysToMove, n as matrixSetupAdapter, u as namedAccountPromotionKeys } from "./setup-core-CHX8Zcxh.js";
3
3
  import { n as normalizeCompatibilityConfig, t as legacyConfigRules } from "./doctor-contract-D9oKDvsJ.js";
4
4
  import { s as resetMatrixThreadBindingsForTests } from "./thread-bindings-shared-CKnY4LSd.js";
5
5
  import { n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries } from "./secret-contract-DTgQyQxc.js";
6
- import { n as matrixOnboardingAdapter } from "./setup-surface-soZQLgfu.js";
7
- import { t as createMatrixThreadBindingManager } from "./thread-bindings-DehFUArg.js";
6
+ import { n as matrixOnboardingAdapter } from "./setup-surface-DwudaOZp.js";
7
+ import { t as createMatrixThreadBindingManager } from "./thread-bindings-xGy-RpZ_.js";
8
8
  export { collectRuntimeConfigAssignments, createMatrixThreadBindingManager, legacyConfigRules, matrixSetupAdapter, matrixOnboardingAdapter as matrixSetupWizard, namedAccountPromotionKeys, normalizeCompatibilityConfig, resetMatrixThreadBindingsForTests, resolveSingleAccountPromotionTarget, secretTargetRegistryEntries, setMatrixRuntime, singleAccountKeysToMove };
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
2
  import { t as resolveValidatedMatrixHomeserverUrl } from "./url-validation-GRHde6lq.js";
3
- import { n as maybeMigrateLegacyStorage, o as resolveMatrixStoragePaths, s as writeStorageMeta } from "./storage-Ds-2Iur5.js";
4
- import "./shared-DjJds8e0.js";
3
+ import { n as maybeMigrateLegacyStorage, o as resolveMatrixStoragePaths, s as writeStorageMeta } from "./storage-DSVcH_zM.js";
4
+ import "./shared-D5SFm-Dp.js";
5
5
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
6
6
  import fs from "node:fs";
7
7
  import { ssrfPolicyFromDangerouslyAllowPrivateNetwork } from "openclaw/plugin-sdk/ssrf-runtime";
@@ -9,7 +9,7 @@ import { ssrfPolicyFromDangerouslyAllowPrivateNetwork } from "openclaw/plugin-sd
9
9
  var create_client_exports = /* @__PURE__ */ __exportAll({ createMatrixClient: () => createMatrixClient });
10
10
  let matrixCreateClientRuntimeDepsPromise;
11
11
  async function loadMatrixCreateClientRuntimeDeps() {
12
- matrixCreateClientRuntimeDepsPromise ??= Promise.all([import("./sdk-C2iC7PJZ.js"), import("./logging-C7wjdKK5.js")]).then(([sdkModule, loggingModule]) => ({
12
+ matrixCreateClientRuntimeDepsPromise ??= Promise.all([import("./sdk-BmcTTd2D.js"), import("./logging-6apMqI4e.js")]).then(([sdkModule, loggingModule]) => ({
13
13
  MatrixClient: sdkModule.MatrixClient,
14
14
  ensureMatrixSdkLoggingConfigured: loggingModule.ensureMatrixSdkLoggingConfigured
15
15
  }));
@@ -1,7 +1,7 @@
1
1
  import { t as formatMatrixErrorMessage } from "./errors-C47hvAF8.js";
2
2
  import { t as ensureMatrixCryptoRuntime } from "./deps-BVWGd2XS.js";
3
- import { f as LogService, p as noop } from "./shared-DjJds8e0.js";
4
- import { i as MATRIX_IDB_SNAPSHOT_LOCK_OPTIONS, n as isRepairableSecretStorageAccessError } from "./recovery-key-store-BRnvY8XS.js";
3
+ import { f as LogService, p as noop } from "./shared-D5SFm-Dp.js";
4
+ import { i as MATRIX_IDB_SNAPSHOT_LOCK_OPTIONS, n as isRepairableSecretStorageAccessError } from "./recovery-key-store--lhj0He2.js";
5
5
  import fs from "node:fs";
6
6
  import path from "node:path";
7
7
  import { resolveDateTimestampMs, resolveTimestampMsToIsoString } from "openclaw/plugin-sdk/number-runtime";
@@ -262,7 +262,7 @@ var MatrixCryptoBootstrapper = class {
262
262
  registerVerificationRequestHandler(crypto) {
263
263
  if (this.verificationHandlerRegistered) return;
264
264
  this.verificationHandlerRegistered = true;
265
- crypto.on(CryptoEvent.VerificationRequestReceived, async (request) => {
265
+ crypto.on(CryptoEvent.VerificationRequestReceived, (request) => {
266
266
  const verificationRequest = request;
267
267
  try {
268
268
  this.deps.verificationManager.trackVerificationRequest(verificationRequest);
@@ -683,7 +683,7 @@ function parseSnapshotPayload(data) {
683
683
  function idbReq(req) {
684
684
  return new Promise((resolve, reject) => {
685
685
  req.addEventListener("success", () => resolve(req.result), { once: true });
686
- req.addEventListener("error", () => reject(req.error), { once: true });
686
+ req.addEventListener("error", () => reject(toLintErrorObject(req.error, "Non-Error rejection")), { once: true });
687
687
  });
688
688
  }
689
689
  async function dumpIndexedDatabases(databasePrefix) {
@@ -697,7 +697,7 @@ async function dumpIndexedDatabases(databasePrefix) {
697
697
  const db = await new Promise((resolve, reject) => {
698
698
  const r = idb.open(name, version);
699
699
  r.addEventListener("success", () => resolve(r.result), { once: true });
700
- r.addEventListener("error", () => reject(r.error), { once: true });
700
+ r.addEventListener("error", () => reject(toLintErrorObject(r.error, "Non-Error rejection")), { once: true });
701
701
  });
702
702
  const stores = [];
703
703
  for (const storeName of db.objectStoreNames) {
@@ -769,7 +769,7 @@ async function restoreIndexedDatabases(snapshot) {
769
769
  resolve();
770
770
  })().catch(reject);
771
771
  }, { once: true });
772
- r.addEventListener("error", () => reject(r.error), { once: true });
772
+ r.addEventListener("error", () => reject(toLintErrorObject(r.error, "Non-Error rejection")), { once: true });
773
773
  });
774
774
  }
775
775
  function resolveDefaultIdbSnapshotPath() {
@@ -812,6 +812,13 @@ async function persistIdbToDisk(params) {
812
812
  LogService.warn("IdbPersistence", "Failed to persist IndexedDB snapshot:", err);
813
813
  }
814
814
  }
815
+ function toLintErrorObject(value, fallbackMessage) {
816
+ if (value instanceof Error) return value;
817
+ if (typeof value === "string") return new Error(value);
818
+ const error = new Error(fallbackMessage, { cause: value });
819
+ if (typeof value === "object" && value !== null || typeof value === "function") Object.assign(error, value);
820
+ return error;
821
+ }
815
822
  //#endregion
816
823
  //#region extensions/matrix/src/matrix/sdk/verification-manager.ts
817
824
  const MATRIX_VERIFICATION_PHASES = new Set([
@@ -1125,7 +1132,7 @@ var MatrixVerificationManager = class {
1125
1132
  }
1126
1133
  async requestVerification(crypto, params) {
1127
1134
  if (!crypto) throw new Error("Matrix crypto is not available");
1128
- let request = null;
1135
+ let request;
1129
1136
  if (params.ownUser) request = await crypto.requestOwnUserVerification();
1130
1137
  else if (params.userId && params.deviceId && crypto.requestDeviceVerification) request = await crypto.requestDeviceVerification(params.userId, params.deviceId);
1131
1138
  else if (params.userId && params.roomId && crypto.requestVerificationDM) request = await crypto.requestVerificationDM(params.userId, params.roomId);
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
2
  import { n as normalizeMatrixMessagingTarget, t as isMatrixQualifiedUserId } from "./target-ids-B-5aQxwn.js";
3
- import { g as resolveMatrixAuth } from "./shared-DjJds8e0.js";
4
- import "./client-spaouc7I.js";
3
+ import { g as resolveMatrixAuth } from "./shared-D5SFm-Dp.js";
4
+ import "./client-D8mT5W6r.js";
5
5
  import { t as MatrixAuthedHttpClient } from "./http-client-KTzUzlpv.js";
6
6
  import { normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
7
7
  //#region extensions/matrix/src/directory-live.ts
@@ -1,4 +1,4 @@
1
- import { n as editMessageMatrix, r as prepareMatrixSingleText, s as sendSingleTextMessageMatrix, y as MsgType } from "./send-DHj1E9ji.js";
1
+ import { n as editMessageMatrix, r as prepareMatrixSingleText, s as sendSingleTextMessageMatrix, y as MsgType } from "./send-BAtT4Rtk.js";
2
2
  import { createDraftStreamLoop } from "openclaw/plugin-sdk/channel-outbound";
3
3
  //#region extensions/matrix/src/matrix/draft-stream.ts
4
4
  const DEFAULT_THROTTLE_MS = 1e3;
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { n as registerMatrixCliMetadata } from "./cli-metadata-gFTG9oJL.js";
1
+ import { n as registerMatrixCliMetadata } from "./cli-metadata-Cf07R_gl.js";
2
2
  import { registerMatrixSubagentHooks } from "./subagent-hooks-api.js";
3
3
  import { defineBundledChannelEntry } from "openclaw/plugin-sdk/channel-entry-contract";
4
4
  //#region extensions/matrix/index.ts
@@ -1,5 +1,5 @@
1
1
  import { t as getMatrixRuntime } from "./runtime-6S3DNFNv.js";
2
- import { o as resolveMatrixStoragePaths } from "./storage-Ds-2Iur5.js";
2
+ import { o as resolveMatrixStoragePaths } from "./storage-DSVcH_zM.js";
3
3
  import os from "node:os";
4
4
  import path from "node:path";
5
5
  import { readJsonFileWithFallback, writeJsonFileAtomically } from "openclaw/plugin-sdk/json-store";
@@ -24,7 +24,7 @@ async function resolvePendingMigrationStatePath(params) {
24
24
  value: directValue
25
25
  };
26
26
  const accountStorageDir = path.dirname(rootDir);
27
- let siblingEntries = [];
27
+ let siblingEntries;
28
28
  try {
29
29
  siblingEntries = (await fs.readdir(accountStorageDir, { withFileTypes: true })).filter((entry) => entry.isDirectory()).map((entry) => entry.name).filter((entry) => path.join(accountStorageDir, entry) !== rootDir).toSorted((left, right) => left.localeCompare(right));
30
30
  } catch {
@@ -1,4 +1,4 @@
1
- import { d as ConsoleLogger, f as LogService, m as setMatrixConsoleLogging } from "./shared-DjJds8e0.js";
1
+ import { d as ConsoleLogger, f as LogService, m as setMatrixConsoleLogging } from "./shared-D5SFm-Dp.js";
2
2
  import { logger } from "matrix-js-sdk/lib/logger.js";
3
3
  //#region extensions/matrix/src/matrix/client/logging.ts
4
4
  let matrixSdkLoggingConfigured = false;
@@ -1,4 +1,4 @@
1
- import { C as formatPollResultsAsText, D as parsePollStartContent, O as resolvePollReferenceEventId, S as formatPollAsText, T as isPollStartType, w as isPollEventType, x as buildPollResultsSummary } from "./send-DHj1E9ji.js";
1
+ import { C as formatPollResultsAsText, D as parsePollStartContent, O as resolvePollReferenceEventId, S as formatPollAsText, T as isPollStartType, w as isPollEventType, x as buildPollResultsSummary } from "./send-BAtT4Rtk.js";
2
2
  import path from "node:path";
3
3
  //#region extensions/matrix/src/matrix/poll-summary.ts
4
4
  function resolveMatrixPollRootEventId(event) {
@@ -1,8 +1,8 @@
1
1
  import { r as isMatrixNotFoundError } from "./errors-C47hvAF8.js";
2
- import { a as sendMessageMatrix, n as editMessageMatrix, w as isPollEventType } from "./send-DHj1E9ji.js";
2
+ import { a as sendMessageMatrix, n as editMessageMatrix, w as isPollEventType } from "./send-BAtT4Rtk.js";
3
3
  import { n as MATRIX_REACTION_EVENT_TYPE } from "./reaction-common-DkrQdBSZ.js";
4
- import { a as resolveMatrixMessageBody, c as resolveMatrixPollRootEventId, i as resolveMatrixMessageAttachment, o as fetchMatrixPollMessageSummary } from "./media-text-C2Wor3Gj.js";
5
- import { r as withResolvedRoomAction } from "./client-D-t6CdHz.js";
4
+ import { a as resolveMatrixMessageBody, c as resolveMatrixPollRootEventId, i as resolveMatrixMessageAttachment, o as fetchMatrixPollMessageSummary } from "./media-text-DxT-tkdx.js";
5
+ import { r as withResolvedRoomAction } from "./client-BT3pHI8c.js";
6
6
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
7
7
  import { resolveIntegerOption } from "openclaw/plugin-sdk/number-runtime";
8
8
  //#region extensions/matrix/src/matrix/actions/limits.ts
@@ -1,21 +1,21 @@
1
1
  import { c as resolveMatrixAccountConfig, s as resolveMatrixAccountAllowlistConfig } from "./config-paths-ZBCMwSos.js";
2
2
  import { t as getMatrixRuntime } from "./runtime-6S3DNFNv.js";
3
- import { m as resolveConfiguredMatrixBotUserIds } from "./setup-core-DRg3cgB8.js";
4
- import { a as buildAllowlistResolutionSummary, c as createTypingCallbacks, d as logInboundDrop, f as logTypingFailure, h as toLocationContext, i as addAllowlistUserEntriesFromConfigEntry, l as formatLocationText, m as summarizeMapping, n as resolveMatrixStoredSessionMeta, o as canonicalizeAllowlistWithResolvedIds, p as patchAllowlistUsersInConfigEntries, r as resolveMatrixRoomConfig, s as createReplyPrefixOptions, u as getAgentScopedMediaLocalRoots } from "./channel--XqVgFZK.js";
5
- import { a as normalizeMatrixUserId, i as normalizeMatrixAllowList, o as resolveMatrixAllowListMatch } from "./config-schema-DfjBrYch.js";
3
+ import { m as resolveConfiguredMatrixBotUserIds } from "./setup-core-CHX8Zcxh.js";
4
+ import { a as buildAllowlistResolutionSummary, c as createTypingCallbacks, d as logInboundDrop, f as logTypingFailure, h as toLocationContext, i as addAllowlistUserEntriesFromConfigEntry, l as formatLocationText, m as summarizeMapping, n as resolveMatrixStoredSessionMeta, o as canonicalizeAllowlistWithResolvedIds, p as patchAllowlistUsersInConfigEntries, r as resolveMatrixRoomConfig, s as createReplyPrefixOptions, u as getAgentScopedMediaLocalRoots } from "./channel-8WZPKRKE.js";
5
+ import { a as normalizeMatrixUserId, i as normalizeMatrixAllowList, o as resolveMatrixAllowListMatch } from "./config-schema-BKGAVlax.js";
6
6
  import { t as isMatrixQualifiedUserId } from "./target-ids-B-5aQxwn.js";
7
7
  import { r as isMatrixNotFoundError, t as formatMatrixErrorMessage } from "./errors-C47hvAF8.js";
8
- import { a as resolveMatrixStateFilePath } from "./storage-Ds-2Iur5.js";
9
- import { D as parsePollStartContent, S as formatPollAsText, T as isPollStartType, _ as readJoinedMatrixMembers, a as sendMessageMatrix, f as promoteMatrixDirectRoomCandidate, g as isStrictDirectMembership, h as hasDirectMatrixMemberFlag, t as chunkMatrixText, v as MATRIX_OPENCLAW_FINALIZED_PREVIEW_KEY, w as isPollEventType } from "./send-DHj1E9ji.js";
10
- import { n as resolveMatrixSqliteStateEnv, t as createMatrixThreadBindingManager } from "./thread-bindings-DehFUArg.js";
11
- import { a as resolveMatrixMessageBody, i as resolveMatrixMessageAttachment, n as formatMatrixMediaUnavailableText, r as formatMatrixMessageText, s as fetchMatrixPollSnapshot, t as formatMatrixMediaTooLargeText } from "./media-text-C2Wor3Gj.js";
8
+ import { a as resolveMatrixStateFilePath } from "./storage-DSVcH_zM.js";
9
+ import { D as parsePollStartContent, S as formatPollAsText, T as isPollStartType, _ as readJoinedMatrixMembers, a as sendMessageMatrix, f as promoteMatrixDirectRoomCandidate, g as isStrictDirectMembership, h as hasDirectMatrixMemberFlag, t as chunkMatrixText, v as MATRIX_OPENCLAW_FINALIZED_PREVIEW_KEY, w as isPollEventType } from "./send-BAtT4Rtk.js";
10
+ import { n as resolveMatrixSqliteStateEnv, t as createMatrixThreadBindingManager } from "./thread-bindings-xGy-RpZ_.js";
11
+ import { a as resolveMatrixMessageBody, i as resolveMatrixMessageAttachment, n as formatMatrixMediaUnavailableText, r as formatMatrixMessageText, s as fetchMatrixPollSnapshot, t as formatMatrixMediaTooLargeText } from "./media-text-DxT-tkdx.js";
12
12
  import { n as setActiveMatrixClient } from "./active-client-DXvz2gCo.js";
13
13
  import { t as isBunRuntime } from "./runtime-BefyhPWv.js";
14
- import { _ as resolveMatrixAuthContext, f as LogService, g as resolveMatrixAuth, h as backfillMatrixAuthDeviceIdAfterStartup, i as resolveSharedMatrixClient, l as isMatrixStartupAbortError, n as releaseSharedClientInstance, u as throwIfMatrixStartupAborted } from "./shared-DjJds8e0.js";
15
- import "./client-spaouc7I.js";
14
+ import { _ as resolveMatrixAuthContext, f as LogService, g as resolveMatrixAuth, h as backfillMatrixAuthDeviceIdAfterStartup, i as resolveSharedMatrixClient, l as isMatrixStartupAbortError, n as releaseSharedClientInstance, u as throwIfMatrixStartupAborted } from "./shared-D5SFm-Dp.js";
15
+ import "./client-D8mT5W6r.js";
16
16
  import { i as isMatrixMediaSizeLimitError, r as MatrixMediaSizeLimitError } from "./http-client-KTzUzlpv.js";
17
17
  import { d as resolveDefaultGroupPolicy, h as warnMissingProviderGroupPolicyFallbackOnce, m as resolveThreadBindingMaxAgeMsForChannel, p as resolveThreadBindingIdleTimeoutMsForChannel, t as GROUP_POLICY_BLOCKED_LABEL, u as resolveAllowlistProviderRuntimeGroupPolicy } from "./runtime-api-CsBoesCU.js";
18
- import { t as resolveMatrixTargets } from "./resolve-targets-CLuzv_Jl.js";
18
+ import { t as resolveMatrixTargets } from "./resolve-targets-BjEKWSku.js";
19
19
  import { t as formatMatrixEncryptedEventDisabledWarning } from "./encryption-guidance-aEUzD940.js";
20
20
  import { n as isMatrixReadySyncState, r as isMatrixTerminalSyncState, t as isMatrixDisconnectedSyncState } from "./sync-state-CWbp0QSY.js";
21
21
  import { a as EventType, i as resolveMatrixThreadRouting, n as resolveMatrixReplyToEventId, o as RelationType, r as resolveMatrixThreadRootId, t as resolveMatrixInboundRoute } from "./route-DY6at4qJ.js";
@@ -75,20 +75,27 @@ function registerMatrixAutoJoin(params) {
75
75
  }
76
76
  }))).filter((roomId) => Boolean(roomId));
77
77
  };
78
- client.on("room.invite", async (roomId, _inviteEvent) => {
79
- if (autoJoin === "allowlist") {
80
- const allowedAliasRoomIds = await resolveAllowedAliasRoomIds();
81
- if (!(autoJoinAllowlist.has("*") || allowedRoomIds.has(roomId) || allowedAliasRoomIds.some((resolvedRoomId) => resolvedRoomId === roomId))) {
82
- logVerbose(`matrix: invite ignored (not in allowlist) room=${roomId}`);
83
- return;
78
+ const runInviteTask = (roomId, task) => {
79
+ Promise.resolve().then(task).catch((err) => {
80
+ runtime.error?.(`matrix: auto-join invite handler failed for room ${roomId}: ${String(err)}`);
81
+ });
82
+ };
83
+ client.on("room.invite", (roomId, _inviteEvent) => {
84
+ runInviteTask(roomId, async () => {
85
+ if (autoJoin === "allowlist") {
86
+ const allowedAliasRoomIds = await resolveAllowedAliasRoomIds();
87
+ if (!(autoJoinAllowlist.has("*") || allowedRoomIds.has(roomId) || allowedAliasRoomIds.some((resolvedRoomId) => resolvedRoomId === roomId))) {
88
+ logVerbose(`matrix: invite ignored (not in allowlist) room=${roomId}`);
89
+ return;
90
+ }
84
91
  }
85
- }
86
- try {
87
- await client.joinRoom(roomId);
88
- logVerbose(`matrix: joined room ${roomId}`);
89
- } catch (err) {
90
- runtime.error?.(`matrix: failed to join room ${roomId}: ${String(err)}`);
91
- }
92
+ try {
93
+ await client.joinRoom(roomId);
94
+ logVerbose(`matrix: joined room ${roomId}`);
95
+ } catch (err) {
96
+ runtime.error?.(`matrix: failed to join room ${roomId}: ${String(err)}`);
97
+ }
98
+ });
92
99
  });
93
100
  }
94
101
  //#endregion
@@ -811,7 +818,7 @@ const SAS_NOTICE_RETRY_DELAY_MS = 750;
811
818
  const VERIFICATION_EVENT_STARTUP_GRACE_MS = 3e4;
812
819
  let matrixDirectRoomDepsPromise;
813
820
  async function loadMatrixDirectRoomDeps() {
814
- matrixDirectRoomDepsPromise ??= Promise.all([import("./send-DHj1E9ji.js").then((n) => n.d), import("./send-DHj1E9ji.js").then((n) => n.m)]).then(([directManagementModule, directRoomModule]) => ({
821
+ matrixDirectRoomDepsPromise ??= Promise.all([import("./send-BAtT4Rtk.js").then((n) => n.d), import("./send-BAtT4Rtk.js").then((n) => n.m)]).then(([directManagementModule, directRoomModule]) => ({
815
822
  inspectMatrixDirectRooms: directManagementModule.inspectMatrixDirectRooms,
816
823
  isStrictDirectRoom: directRoomModule.isStrictDirectRoom
817
824
  }));
@@ -953,7 +960,9 @@ async function resolveVerificationSasNoticeForSignal(client, params) {
953
960
  summary,
954
961
  sasNotice: immediateNotice
955
962
  };
956
- await new Promise((resolve) => setTimeout(resolve, params.sasNoticeRetryDelayMs ?? SAS_NOTICE_RETRY_DELAY_MS));
963
+ await new Promise((resolve) => {
964
+ setTimeout(resolve, params.sasNoticeRetryDelayMs ?? SAS_NOTICE_RETRY_DELAY_MS);
965
+ });
957
966
  const retriedSummary = await resolveVerificationSummaryForSignal(client, params);
958
967
  return {
959
968
  summary: retriedSummary,
@@ -1294,38 +1303,40 @@ function registerMatrixMonitorEvents(params) {
1294
1303
  await onRoomMessage(roomId, event);
1295
1304
  });
1296
1305
  });
1297
- client.on("room.failed_decryption", async (roomId, event, error) => {
1298
- const failureState = postHealthySyncDecryptFailureTracker.recordFailure(roomId, event, error);
1299
- const selfUserId = await resolveMatrixSelfUserId(client, logVerboseMessage);
1300
- const sender = typeof event.sender === "string" ? event.sender : null;
1301
- const senderMatchesOwnUser = Boolean(selfUserId && sender && selfUserId === sender);
1302
- logger.warn(failureState.freshAfterHealthySync ? "Failed to decrypt fresh post-healthy-sync message" : "Failed to decrypt message", {
1303
- roomId,
1304
- eventId: event.event_id,
1305
- sender,
1306
- senderMatchesOwnUser,
1307
- error: error.message,
1308
- freshAfterHealthySync: failureState.freshAfterHealthySync,
1309
- ...failureState.freshAfterHealthySync ? { postHealthySyncFailureCount: failureState.failureCount } : {}
1310
- });
1311
- if (failureState.warning) logger.warn(formatMatrixPostHealthySyncDecryptionHint(auth.accountId), {
1312
- roomId,
1313
- eventId: event.event_id,
1314
- failureCount: failureState.failureCount,
1315
- roomCount: failureState.warning.roomCount,
1316
- rooms: failureState.warning.rooms,
1317
- senderCount: failureState.warning.senderCount,
1318
- senders: failureState.warning.senders,
1319
- sampleEventIds: failureState.warning.eventIds,
1320
- latestError: failureState.warning.latestError,
1321
- windowMs: failureState.warning.windowMs
1322
- });
1323
- if (senderMatchesOwnUser) logger.warn(formatMatrixSelfDecryptionHint(auth.accountId), {
1324
- roomId,
1325
- eventId: event.event_id,
1326
- sender
1306
+ client.on("room.failed_decryption", (roomId, event, error) => {
1307
+ runMonitorTask(`failed decryption handler room=${roomId} id=${event.event_id ?? "unknown"}`, async () => {
1308
+ const failureState = postHealthySyncDecryptFailureTracker.recordFailure(roomId, event, error);
1309
+ const selfUserId = await resolveMatrixSelfUserId(client, logVerboseMessage);
1310
+ const sender = typeof event.sender === "string" ? event.sender : null;
1311
+ const senderMatchesOwnUser = Boolean(selfUserId && sender && selfUserId === sender);
1312
+ logger.warn(failureState.freshAfterHealthySync ? "Failed to decrypt fresh post-healthy-sync message" : "Failed to decrypt message", {
1313
+ roomId,
1314
+ eventId: event.event_id,
1315
+ sender,
1316
+ senderMatchesOwnUser,
1317
+ error: error.message,
1318
+ freshAfterHealthySync: failureState.freshAfterHealthySync,
1319
+ ...failureState.freshAfterHealthySync ? { postHealthySyncFailureCount: failureState.failureCount } : {}
1320
+ });
1321
+ if (failureState.warning) logger.warn(formatMatrixPostHealthySyncDecryptionHint(auth.accountId), {
1322
+ roomId,
1323
+ eventId: event.event_id,
1324
+ failureCount: failureState.failureCount,
1325
+ roomCount: failureState.warning.roomCount,
1326
+ rooms: failureState.warning.rooms,
1327
+ senderCount: failureState.warning.senderCount,
1328
+ senders: failureState.warning.senders,
1329
+ sampleEventIds: failureState.warning.eventIds,
1330
+ latestError: failureState.warning.latestError,
1331
+ windowMs: failureState.warning.windowMs
1332
+ });
1333
+ if (senderMatchesOwnUser) logger.warn(formatMatrixSelfDecryptionHint(auth.accountId), {
1334
+ roomId,
1335
+ eventId: event.event_id,
1336
+ sender
1337
+ });
1338
+ logVerboseMessage(`matrix: failed decrypt room=${roomId} id=${event.event_id ?? "unknown"} freshAfterHealthySync=${String(failureState.freshAfterHealthySync)} error=${error.message}`);
1327
1339
  });
1328
- logVerboseMessage(`matrix: failed decrypt room=${roomId} id=${event.event_id ?? "unknown"} freshAfterHealthySync=${String(failureState.freshAfterHealthySync)} error=${error.message}`);
1329
1340
  });
1330
1341
  client.on("verification.summary", (summary) => {
1331
1342
  runMonitorTask("verification summary handler", async () => {
@@ -2019,7 +2030,7 @@ let sessionBindingRuntimePromise;
2019
2030
  let matrixReactionEventsPromise;
2020
2031
  let matrixDraftStreamPromise;
2021
2032
  function loadMatrixSendModule() {
2022
- matrixSendModulePromise ??= import("./send-DHj1E9ji.js").then((n) => n.l);
2033
+ matrixSendModulePromise ??= import("./send-BAtT4Rtk.js").then((n) => n.l);
2023
2034
  return matrixSendModulePromise;
2024
2035
  }
2025
2036
  function loadAcpBindingRuntime() {
@@ -2031,11 +2042,11 @@ function loadSessionBindingRuntime() {
2031
2042
  return sessionBindingRuntimePromise;
2032
2043
  }
2033
2044
  function loadMatrixReactionEvents() {
2034
- matrixReactionEventsPromise ??= import("./reaction-events-Bh2u-_9j.js");
2045
+ matrixReactionEventsPromise ??= import("./reaction-events-BWDww7_l.js");
2035
2046
  return matrixReactionEventsPromise;
2036
2047
  }
2037
2048
  function loadMatrixDraftStream() {
2038
- matrixDraftStreamPromise ??= import("./draft-stream-eaBWrjVK.js");
2049
+ matrixDraftStreamPromise ??= import("./draft-stream-B7lCkUfU.js");
2039
2050
  return matrixDraftStreamPromise;
2040
2051
  }
2041
2052
  async function matrixTextWouldActivateMentions(client, text) {
@@ -3792,11 +3803,11 @@ function createMatrixRoomInfoResolver(client) {
3792
3803
  let matrixStartupMaintenanceDepsPromise;
3793
3804
  async function loadMatrixStartupMaintenanceDeps() {
3794
3805
  matrixStartupMaintenanceDepsPromise ??= Promise.all([
3795
- import("./setup-core-DRg3cgB8.js").then((n) => n.s),
3806
+ import("./setup-core-CHX8Zcxh.js").then((n) => n.s),
3796
3807
  import("./device-health-D4LBxuPq.js"),
3797
- import("./setup-core-DRg3cgB8.js").then((n) => n.a),
3798
- import("./legacy-crypto-restore--9Wu5rsx.js"),
3799
- import("./startup-verification-CWLSyFen.js")
3808
+ import("./setup-core-CHX8Zcxh.js").then((n) => n.a),
3809
+ import("./legacy-crypto-restore-CbVSppMd.js"),
3810
+ import("./startup-verification-MAPgdkTX.js")
3800
3811
  ]).then(([configUpdateModule, deviceHealthModule, profileModule, legacyCryptoRestoreModule, startupVerificationModule]) => ({
3801
3812
  updateMatrixAccountConfig: configUpdateModule.updateMatrixAccountConfig,
3802
3813
  summarizeMatrixDeviceHealth: deviceHealthModule.summarizeMatrixDeviceHealth,
@@ -4101,24 +4112,23 @@ async function monitorMatrixProvider(opts = {}) {
4101
4112
  });
4102
4113
  const allowlistOnly = accountConfig.allowlistOnly === true;
4103
4114
  const accountAllowBots = accountConfig.allowBots;
4104
- let allowFrom = (accountConfig.dm?.allowFrom ?? []).map(String);
4105
- let groupAllowFrom = (accountConfig.groupAllowFrom ?? []).map(String);
4106
- let allowFromResolvedEntries = [];
4107
- let groupAllowFromResolvedEntries = [];
4108
4115
  let roomsConfig = accountConfig.groups ?? accountConfig.rooms;
4109
4116
  let needsRoomAliasesForConfig = false;
4117
+ const initialAllowFrom = (accountConfig.dm?.allowFrom ?? []).map(String);
4118
+ const initialGroupAllowFrom = (accountConfig.groupAllowFrom ?? []).map(String);
4110
4119
  const configuredBotUserIds = resolveConfiguredMatrixBotUserIds({
4111
4120
  cfg,
4112
4121
  accountId: effectiveAccountId
4113
4122
  });
4114
- ({allowFrom, allowFromResolvedEntries, groupAllowFrom, groupAllowFromResolvedEntries, roomsConfig} = await resolveMatrixMonitorConfig({
4123
+ const { allowFrom, allowFromResolvedEntries, groupAllowFrom, groupAllowFromResolvedEntries, roomsConfig: resolvedRoomsConfig } = await resolveMatrixMonitorConfig({
4115
4124
  cfg,
4116
4125
  accountId: effectiveAccountId,
4117
- allowFrom,
4118
- groupAllowFrom,
4126
+ allowFrom: initialAllowFrom,
4127
+ groupAllowFrom: initialGroupAllowFrom,
4119
4128
  roomsConfig,
4120
4129
  runtime
4121
- }));
4130
+ });
4131
+ roomsConfig = resolvedRoomsConfig;
4122
4132
  needsRoomAliasesForConfig = Boolean(roomsConfig && Object.keys(roomsConfig).some((key) => key.trim().startsWith("#")));
4123
4133
  cfg = {
4124
4134
  ...cfg,
@@ -3,7 +3,7 @@ import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runti
3
3
  //#region extensions/matrix/src/plugin-entry.runtime.ts
4
4
  let matrixVerificationRuntimePromise;
5
5
  function loadMatrixVerificationRuntime() {
6
- matrixVerificationRuntimePromise ??= import("./verification-BJfjKMr8.js").then((n) => n.y);
6
+ matrixVerificationRuntimePromise ??= import("./verification-DEaJQn5O.js").then((n) => n.y);
7
7
  return matrixVerificationRuntimePromise;
8
8
  }
9
9
  function sendError(respond, err) {
@@ -0,0 +1,3 @@
1
+ import { t as createMatrixClient } from "./create-client-D4x1reLU.js";
2
+ import "./client-D8mT5W6r.js";
3
+ export { createMatrixClient };
@@ -1,6 +1,6 @@
1
1
  import { t as getMatrixRuntime } from "./runtime-6S3DNFNv.js";
2
- import { c as resolveMatrixConfigPath, l as updateMatrixAccountConfig, o as syncMatrixOwnProfile } from "./setup-core-DRg3cgB8.js";
3
- import { n as withResolvedActionClient } from "./client-D-t6CdHz.js";
2
+ import { c as resolveMatrixConfigPath, l as updateMatrixAccountConfig, o as syncMatrixOwnProfile } from "./setup-core-CHX8Zcxh.js";
3
+ import { n as withResolvedActionClient } from "./client-BT3pHI8c.js";
4
4
  import { normalizeAccountId } from "openclaw/plugin-sdk/account-id";
5
5
  //#region extensions/matrix/src/matrix/actions/profile.ts
6
6
  async function updateMatrixOwnProfile(opts = {}) {
@@ -7,7 +7,7 @@ import { getSessionBindingService } from "openclaw/plugin-sdk/session-binding-ru
7
7
  let approvalReactionAuthPromise;
8
8
  let execApprovalResolverPromise;
9
9
  function loadApprovalReactionAuth() {
10
- approvalReactionAuthPromise ??= import("./approval-reaction-auth-m-11_ajL.js");
10
+ approvalReactionAuthPromise ??= import("./approval-reaction-auth-EVeOTYxE.js");
11
11
  return approvalReactionAuthPromise;
12
12
  }
13
13
  function loadExecApprovalResolver() {
@@ -1,5 +1,5 @@
1
1
  import { n as formatMatrixErrorReason, t as formatMatrixErrorMessage } from "./errors-C47hvAF8.js";
2
- import { f as LogService } from "./shared-DjJds8e0.js";
2
+ import { f as LogService } from "./shared-D5SFm-Dp.js";
3
3
  import { loadJsonFile, saveJsonFile } from "openclaw/plugin-sdk/json-store";
4
4
  import { decodeRecoveryKey } from "matrix-js-sdk/lib/crypto-api/recovery-key.js";
5
5
  //#region extensions/matrix/src/matrix/sdk/idb-persistence-lock.ts
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
2
  import { n as normalizeMatrixMessagingTarget, t as isMatrixQualifiedUserId } from "./target-ids-B-5aQxwn.js";
3
- import { n as listMatrixDirectoryGroupsLive, r as listMatrixDirectoryPeersLive } from "./directory-live-DgjzYeC_.js";
3
+ import { n as listMatrixDirectoryGroupsLive, r as listMatrixDirectoryPeersLive } from "./directory-live-D0OsjRmq.js";
4
4
  import { normalizeOptionalLowercaseString } from "openclaw/plugin-sdk/string-coerce-runtime";
5
5
  //#region extensions/matrix/src/resolve-targets.ts
6
6
  var resolve_targets_exports = /* @__PURE__ */ __exportAll({ resolveMatrixTargets: () => resolveMatrixTargets });
@@ -1,4 +1,4 @@
1
- import { t as resolveMatrixTargets } from "./resolve-targets-CLuzv_Jl.js";
1
+ import { t as resolveMatrixTargets } from "./resolve-targets-BjEKWSku.js";
2
2
  //#region extensions/matrix/src/resolver.runtime.ts
3
3
  const matrixResolverRuntime = { resolveMatrixTargets };
4
4
  //#endregion
@@ -1,13 +1,13 @@
1
1
  import { t as isRecord } from "./record-shared-CvzjvHRn.js";
2
2
  import { n as formatMatrixErrorReason, r as isMatrixNotFoundError, t as formatMatrixErrorMessage } from "./errors-C47hvAF8.js";
3
- import { t as claimCurrentTokenStorageState } from "./storage-Ds-2Iur5.js";
4
- import { c as createMatrixStartupAbortError, d as ConsoleLogger, f as LogService, p as noop, u as throwIfMatrixStartupAborted } from "./shared-DjJds8e0.js";
3
+ import { t as claimCurrentTokenStorageState } from "./storage-DSVcH_zM.js";
4
+ import { c as createMatrixStartupAbortError, d as ConsoleLogger, f as LogService, p as noop, u as throwIfMatrixStartupAborted } from "./shared-D5SFm-Dp.js";
5
5
  import { a as matrixEventToRaw, n as createMatrixGuardedFetch, o as parseMxc, t as MatrixAuthedHttpClient } from "./http-client-KTzUzlpv.js";
6
6
  import { n as resolveMatrixRoomKeyBackupReadinessError } from "./backup-health-Dm_YMVFT.js";
7
- import { createMatrixJsSdkClientLogger } from "./logging-C7wjdKK5.js";
7
+ import { createMatrixJsSdkClientLogger } from "./logging-6apMqI4e.js";
8
8
  import { t as createAsyncLock } from "./async-lock-BcLS4KOc.js";
9
9
  import { n as isMatrixReadySyncState, r as isMatrixTerminalSyncState } from "./sync-state-CWbp0QSY.js";
10
- import { n as isRepairableSecretStorageAccessError, r as MATRIX_IDB_PERSIST_INTERVAL_MS, t as MatrixRecoveryKeyStore } from "./recovery-key-store-BRnvY8XS.js";
10
+ import { n as isRepairableSecretStorageAccessError, r as MATRIX_IDB_PERSIST_INTERVAL_MS, t as MatrixRecoveryKeyStore } from "./recovery-key-store--lhj0He2.js";
11
11
  import { normalizeNullableString, normalizeStringEntries, uniqueStrings } from "openclaw/plugin-sdk/string-coerce-runtime";
12
12
  import { readFileSync } from "node:fs";
13
13
  import path from "node:path";
@@ -288,7 +288,7 @@ function createMatrixExplicitBootstrapOptions(params) {
288
288
  let loadedMatrixCryptoRuntime = null;
289
289
  let matrixCryptoRuntimePromise = null;
290
290
  async function loadMatrixCryptoRuntime() {
291
- matrixCryptoRuntimePromise ??= import("./crypto-runtime-3hgwY-d6.js").then((runtime) => {
291
+ matrixCryptoRuntimePromise ??= import("./crypto-runtime-C6v1fiVu.js").then((runtime) => {
292
292
  loadedMatrixCryptoRuntime = runtime;
293
293
  return runtime;
294
294
  });
@@ -919,7 +919,7 @@ var MatrixClient = class {
919
919
  const backupUsableBeforeStagedRecovery = resolveMatrixRoomKeyBackupReadinessError(await this.getRoomKeyBackupStatus(), { requireServerBackup: true }) === null;
920
920
  const trimmedRecoveryKey = rawRecoveryKey.trim();
921
921
  if (!trimmedRecoveryKey) return await fail("Matrix recovery key is required");
922
- let stagedKeyId = null;
922
+ let stagedKeyId;
923
923
  try {
924
924
  stagedKeyId = await this.resolveDefaultSecretStorageKeyId(crypto) ?? null;
925
925
  this.recoveryKeyStore.stageEncodedRecoveryKey({
@@ -229,7 +229,7 @@ function buildPollResponseContent(pollEventId, answerIds) {
229
229
  //#region extensions/matrix/src/matrix/send/client.ts
230
230
  let matrixSendClientRuntimePromise = null;
231
231
  async function loadMatrixSendClientRuntime() {
232
- matrixSendClientRuntimePromise ??= import("./client-bootstrap-DOlQb7Jx.js").then((n) => n.t);
232
+ matrixSendClientRuntimePromise ??= import("./client-bootstrap-B0wcXXlD.js").then((n) => n.t);
233
233
  return await matrixSendClientRuntimePromise;
234
234
  }
235
235
  function resolveMediaMaxBytes(accountId, cfg) {
@@ -1,7 +1,7 @@
1
1
  import { a as hasExplicitMatrixAccountConfig, c as resolveMatrixAccountConfig } from "./config-paths-ZBCMwSos.js";
2
- import "./setup-core-DRg3cgB8.js";
2
+ import "./setup-core-CHX8Zcxh.js";
3
3
  import { t as formatMatrixErrorMessage } from "./errors-C47hvAF8.js";
4
- import { n as bootstrapMatrixVerification } from "./verification-BJfjKMr8.js";
4
+ import { n as bootstrapMatrixVerification } from "./verification-DEaJQn5O.js";
5
5
  //#region extensions/matrix/src/setup-bootstrap.ts
6
6
  async function maybeBootstrapNewEncryptedMatrixAccount(params) {
7
7
  const accountConfig = resolveMatrixAccountConfig({
@@ -669,7 +669,7 @@ const matrixSetupAdapter = {
669
669
  input
670
670
  }),
671
671
  afterAccountConfigWritten: async ({ previousCfg, cfg, accountId, runtime }) => {
672
- const { runMatrixSetupBootstrapAfterConfigWrite } = await import("./setup-bootstrap-kTPKb7jR.js");
672
+ const { runMatrixSetupBootstrapAfterConfigWrite } = await import("./setup-bootstrap-D3tm10tD.js");
673
673
  await runMatrixSetupBootstrapAfterConfigWrite({
674
674
  previousCfg,
675
675
  cfg,
@@ -1,5 +1,5 @@
1
- import { g as resolveMatrixAccount, n as matrixSetupAdapter, t as createMatrixSetupWizardProxy } from "./setup-core-DRg3cgB8.js";
2
- import { r as matrixConfigAdapter, t as MatrixChannelConfigSchema } from "./config-schema-DfjBrYch.js";
1
+ import { g as resolveMatrixAccount, n as matrixSetupAdapter, t as createMatrixSetupWizardProxy } from "./setup-core-CHX8Zcxh.js";
2
+ import { r as matrixConfigAdapter, t as MatrixChannelConfigSchema } from "./config-schema-BKGAVlax.js";
3
3
  import { describeAccountSnapshot } from "openclaw/plugin-sdk/account-helpers";
4
4
  const matrixSetupPlugin = {
5
5
  id: "matrix",
@@ -13,7 +13,7 @@ const matrixSetupPlugin = {
13
13
  order: 70,
14
14
  quickstartAllowFrom: true
15
15
  },
16
- setupWizard: createMatrixSetupWizardProxy(async () => ({ matrixSetupWizard: (await import("./setup-surface-soZQLgfu.js").then((n) => n.t)).matrixSetupWizard })),
16
+ setupWizard: createMatrixSetupWizardProxy(async () => ({ matrixSetupWizard: (await import("./setup-surface-DwudaOZp.js").then((n) => n.t)).matrixSetupWizard })),
17
17
  setup: matrixSetupAdapter,
18
18
  capabilities: {
19
19
  chatTypes: [
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
2
  import { n as requiresExplicitMatrixDefaultAccount } from "./account-selection-DEMtY2cn.js";
3
3
  import { c as resolveMatrixAccountConfig, t as resolveMatrixConfigFieldPath } from "./config-paths-ZBCMwSos.js";
4
4
  import { r as resolveMatrixEnvAuthReadiness } from "./env-auth-DIzOApj0.js";
5
- import { g as resolveMatrixAccount, h as resolveDefaultMatrixAccountId, i as moveSingleMatrixAccountConfigToNamedAccount, l as updateMatrixAccountConfig, p as listMatrixAccountIds, r as resolveMatrixSetupDmAllowFrom } from "./setup-core-DRg3cgB8.js";
5
+ import { g as resolveMatrixAccount, h as resolveDefaultMatrixAccountId, i as moveSingleMatrixAccountConfigToNamedAccount, l as updateMatrixAccountConfig, p as listMatrixAccountIds, r as resolveMatrixSetupDmAllowFrom } from "./setup-core-CHX8Zcxh.js";
6
6
  import { n as validateMatrixHomeserverUrl, r as isPrivateOrLoopbackHost, t as resolveValidatedMatrixHomeserverUrl } from "./url-validation-GRHde6lq.js";
7
7
  import { n as ensureMatrixSdkInstalled, r as isMatrixSdkAvailable } from "./deps-BVWGd2XS.js";
8
8
  import { normalizeLowercaseStringOrEmpty, normalizeOptionalString, normalizeStringifiedOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
@@ -104,7 +104,7 @@ async function promptMatrixAllowFrom(params) {
104
104
  pending.push(part);
105
105
  }
106
106
  if (pending.length > 0) {
107
- const { resolveMatrixTargets } = await import("./resolve-targets-CLuzv_Jl.js").then((n) => n.n);
107
+ const { resolveMatrixTargets } = await import("./resolve-targets-BjEKWSku.js").then((n) => n.n);
108
108
  const results = await resolveMatrixTargets({
109
109
  cfg,
110
110
  accountId,
@@ -232,7 +232,7 @@ async function configureMatrixAccessPrompts(params) {
232
232
  resolvedIds.push(cleaned);
233
233
  continue;
234
234
  }
235
- const { listMatrixDirectoryGroupsLive } = await import("./directory-live-DgjzYeC_.js").then((n) => n.t);
235
+ const { listMatrixDirectoryGroupsLive } = await import("./directory-live-D0OsjRmq.js").then((n) => n.t);
236
236
  const matches = await listMatrixDirectoryGroupsLive({
237
237
  cfg: next,
238
238
  accountId: params.accountId,
@@ -507,7 +507,7 @@ const matrixOnboardingAdapter = {
507
507
  });
508
508
  },
509
509
  afterConfigWritten: async ({ previousCfg, cfg, accountId, runtime }) => {
510
- const { runMatrixSetupBootstrapAfterConfigWrite } = await import("./setup-bootstrap-kTPKb7jR.js");
510
+ const { runMatrixSetupBootstrapAfterConfigWrite } = await import("./setup-bootstrap-D3tm10tD.js");
511
511
  await runMatrixSetupBootstrapAfterConfigWrite({
512
512
  previousCfg,
513
513
  cfg,
@@ -5,7 +5,7 @@ import { i as findMatrixAccountConfig, l as resolveMatrixBaseConfig, o as listNo
5
5
  import { i as resolveScopedMatrixEnvConfig, n as resolveGlobalMatrixEnvConfig } from "./env-auth-DIzOApj0.js";
6
6
  import { t as getMatrixRuntime } from "./runtime-6S3DNFNv.js";
7
7
  import { t as resolveValidatedMatrixHomeserverUrl } from "./url-validation-GRHde6lq.js";
8
- import { i as repairCurrentTokenStorageMetaDeviceId } from "./storage-Ds-2Iur5.js";
8
+ import { i as repairCurrentTokenStorageMetaDeviceId } from "./storage-DSVcH_zM.js";
9
9
  import { DEFAULT_ACCOUNT_ID as DEFAULT_ACCOUNT_ID$1, normalizeAccountId as normalizeAccountId$1, normalizeOptionalAccountId, normalizeOptionalAccountId as normalizeOptionalAccountId$1 } from "openclaw/plugin-sdk/account-id";
10
10
  import { coerceSecretRef, normalizeResolvedSecretInputString } from "openclaw/plugin-sdk/secret-input-runtime";
11
11
  import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
@@ -22,7 +22,7 @@ let matrixCredentialsWriteRuntimePromise;
22
22
  let matrixSecretInputDepsPromise;
23
23
  const MATRIX_AUTH_REQUEST_RETRY_RE = /\b(fetch failed|econnreset|econnrefused|enotfound|etimedout|ehostunreach|enetunreach|eai_again|und_err_|socket hang up|network|headers timeout|body timeout|connect timeout)\b/i;
24
24
  async function loadMatrixAuthClientDeps() {
25
- matrixAuthClientDepsPromise ??= Promise.all([import("./sdk-C2iC7PJZ.js"), import("./logging-C7wjdKK5.js")]).then(([sdkModule, loggingModule]) => ({
25
+ matrixAuthClientDepsPromise ??= Promise.all([import("./sdk-BmcTTd2D.js"), import("./logging-6apMqI4e.js")]).then(([sdkModule, loggingModule]) => ({
26
26
  MatrixClient: sdkModule.MatrixClient,
27
27
  ensureMatrixSdkLoggingConfigured: loggingModule.ensureMatrixSdkLoggingConfigured
28
28
  }));
@@ -552,10 +552,17 @@ async function awaitMatrixStartupWithAbort(promise, abortSignal) {
552
552
  resolve(value);
553
553
  }, (error) => {
554
554
  abortSignal.removeEventListener("abort", onAbort);
555
- reject(error);
555
+ reject(toLintErrorObject(error, "Non-Error rejection"));
556
556
  });
557
557
  });
558
558
  }
559
+ function toLintErrorObject(value, fallbackMessage) {
560
+ if (value instanceof Error) return value;
561
+ if (typeof value === "string") return new Error(value);
562
+ const error = new Error(fallbackMessage, { cause: value });
563
+ if (typeof value === "object" && value !== null || typeof value === "function") Object.assign(error, value);
564
+ return error;
565
+ }
559
566
  //#endregion
560
567
  //#region extensions/matrix/src/matrix/client/shared.ts
561
568
  var shared_exports = /* @__PURE__ */ __exportAll({
@@ -569,7 +576,7 @@ var shared_exports = /* @__PURE__ */ __exportAll({
569
576
  });
570
577
  let matrixCreateClientDepsPromise;
571
578
  async function loadMatrixCreateClientDeps() {
572
- matrixCreateClientDepsPromise ??= import("./create-client-B4CPKa5P.js").then((n) => n.n).then((runtime) => ({ createMatrixClient: runtime.createMatrixClient }));
579
+ matrixCreateClientDepsPromise ??= import("./create-client-D4x1reLU.js").then((n) => n.n).then((runtime) => ({ createMatrixClient: runtime.createMatrixClient }));
573
580
  return await matrixCreateClientDepsPromise;
574
581
  }
575
582
  const sharedClientStates = /* @__PURE__ */ new Map();
@@ -1,7 +1,7 @@
1
1
  import { t as getMatrixRuntime } from "./runtime-6S3DNFNv.js";
2
2
  import { t as formatMatrixErrorMessage } from "./errors-C47hvAF8.js";
3
- import { o as resolveMatrixStoragePaths, r as recordCurrentStorageMetaDeviceId } from "./storage-Ds-2Iur5.js";
4
- import { n as resolveMatrixSqliteStateEnv } from "./thread-bindings-DehFUArg.js";
3
+ import { o as resolveMatrixStoragePaths, r as recordCurrentStorageMetaDeviceId } from "./storage-DSVcH_zM.js";
4
+ import { n as resolveMatrixSqliteStateEnv } from "./thread-bindings-xGy-RpZ_.js";
5
5
  import path from "node:path";
6
6
  import { createHash } from "node:crypto";
7
7
  import { timestampMsToIsoString } from "openclaw/plugin-sdk/number-runtime";
@@ -87,7 +87,7 @@ function resolvePreferredMatrixStorageRoot(params) {
87
87
  rootDir: best.rootDir,
88
88
  tokenHash: best.tokenHash
89
89
  };
90
- let siblingEntries = [];
90
+ let siblingEntries;
91
91
  try {
92
92
  siblingEntries = fs.readdirSync(parentDir, { withFileTypes: true });
93
93
  } catch {
@@ -1,7 +1,7 @@
1
1
  import { t as getMatrixRuntime } from "./runtime-6S3DNFNv.js";
2
2
  import { a as listBindingsForAccount, c as resolveBindingKey, f as setMatrixThreadBindingManagerEntry, h as toSessionBindingRecord, l as resolveEffectiveBindingExpiry, m as toMatrixBindingTargetKind, o as removeBindingRecord, r as getMatrixThreadBindingManagerEntry, t as deleteMatrixThreadBindingManagerEntry, u as setBindingRecord } from "./thread-bindings-shared-CKnY4LSd.js";
3
- import { a as resolveMatrixStateFilePath, t as claimCurrentTokenStorageState } from "./storage-Ds-2Iur5.js";
4
- import { a as sendMessageMatrix } from "./send-DHj1E9ji.js";
3
+ import { a as resolveMatrixStateFilePath, t as claimCurrentTokenStorageState } from "./storage-DSVcH_zM.js";
4
+ import { a as sendMessageMatrix } from "./send-BAtT4Rtk.js";
5
5
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
@@ -1,12 +1,12 @@
1
1
  import { c as resolveMatrixAccountConfig } from "./config-paths-ZBCMwSos.js";
2
- import "./setup-core-DRg3cgB8.js";
3
- import { E as parsePollStart, T as isPollStartType, b as buildPollResponseContent, i as reactMatrixMessage, u as resolveMatrixRoomId } from "./send-DHj1E9ji.js";
2
+ import "./setup-core-CHX8Zcxh.js";
3
+ import { E as parsePollStart, T as isPollStartType, b as buildPollResponseContent, i as reactMatrixMessage, u as resolveMatrixRoomId } from "./send-BAtT4Rtk.js";
4
4
  import { i as buildMatrixReactionRelationsPath, o as selectOwnMatrixReactionEventIds, s as summarizeMatrixReactionEvents } from "./reaction-common-DkrQdBSZ.js";
5
- import { n as withResolvedActionClient, r as withResolvedRoomAction } from "./client-D-t6CdHz.js";
6
- import { a as fetchEventSummary, c as resolveMatrixActionLimit, i as sendMatrixMessage, n as editMatrixMessage, o as readPinnedEvents, r as readMatrixMessages, s as EventType, t as deleteMatrixMessage } from "./messages-D0sumPNx.js";
5
+ import { n as withResolvedActionClient, r as withResolvedRoomAction } from "./client-BT3pHI8c.js";
6
+ import { a as fetchEventSummary, c as resolveMatrixActionLimit, i as sendMatrixMessage, n as editMatrixMessage, o as readPinnedEvents, r as readMatrixMessages, s as EventType, t as deleteMatrixMessage } from "./messages-CnMMyKaw.js";
7
7
  import { a as jsonResult, c as readStringArrayParam, l as readStringParam, o as readPositiveIntegerParam, r as createActionGate, s as readReactionParams } from "./runtime-api-CsBoesCU.js";
8
- import { t as applyMatrixProfileUpdate } from "./profile-update-Defy1W90.js";
9
- import { _ as scanMatrixVerificationQr, a as confirmMatrixVerificationSas, b as verifyMatrixRecoveryKey, c as getMatrixRoomKeyBackupStatus, d as listMatrixVerifications, f as mismatchMatrixVerificationSas, h as restoreMatrixRoomKeyBackup, i as confirmMatrixVerificationReciprocateQr, l as getMatrixVerificationSas, n as bootstrapMatrixVerification, o as generateMatrixVerificationQr, p as requestMatrixVerification, r as cancelMatrixVerification, s as getMatrixEncryptionStatus, t as acceptMatrixVerification, u as getMatrixVerificationStatus, v as startMatrixVerification } from "./verification-BJfjKMr8.js";
8
+ import { t as applyMatrixProfileUpdate } from "./profile-update-CdrpnVB1.js";
9
+ import { _ as scanMatrixVerificationQr, a as confirmMatrixVerificationSas, b as verifyMatrixRecoveryKey, c as getMatrixRoomKeyBackupStatus, d as listMatrixVerifications, f as mismatchMatrixVerificationSas, h as restoreMatrixRoomKeyBackup, i as confirmMatrixVerificationReciprocateQr, l as getMatrixVerificationSas, n as bootstrapMatrixVerification, o as generateMatrixVerificationQr, p as requestMatrixVerification, r as cancelMatrixVerification, s as getMatrixEncryptionStatus, t as acceptMatrixVerification, u as getMatrixVerificationStatus, v as startMatrixVerification } from "./verification-DEaJQn5O.js";
10
10
  import { normalizeOptionalLowercaseString, uniqueStrings, uniqueValues } from "openclaw/plugin-sdk/string-coerce-runtime";
11
11
  //#region extensions/matrix/src/matrix/actions/polls.ts
12
12
  function normalizeOptionIndexes(indexes) {
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { i as withStartedActionClient, n as withResolvedActionClient } from "./client-D-t6CdHz.js";
2
+ import { i as withStartedActionClient, n as withResolvedActionClient } from "./client-BT3pHI8c.js";
3
3
  import { n as formatMatrixEncryptionUnavailableError } from "./encryption-guidance-aEUzD940.js";
4
4
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
5
5
  import { requireRuntimeConfig } from "openclaw/plugin-sdk/plugin-config-runtime";
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@openclaw/matrix",
3
- "version": "2026.5.31-beta.3",
3
+ "version": "2026.6.1-beta.1",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@openclaw/matrix",
9
- "version": "2026.5.31-beta.3",
9
+ "version": "2026.6.1-beta.1",
10
10
  "dependencies": {
11
11
  "@matrix-org/matrix-sdk-crypto-nodejs": "0.6.0",
12
12
  "@matrix-org/matrix-sdk-crypto-wasm": "18.3.0",
@@ -18,7 +18,7 @@
18
18
  "zod": "4.4.3"
19
19
  },
20
20
  "peerDependencies": {
21
- "openclaw": ">=2026.5.31-beta.3"
21
+ "openclaw": ">=2026.6.1-beta.1"
22
22
  },
23
23
  "peerDependenciesMeta": {
24
24
  "openclaw": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openclaw/matrix",
3
- "version": "2026.5.31-beta.3",
3
+ "version": "2026.6.1-beta.1",
4
4
  "description": "OpenClaw Matrix channel plugin for rooms and direct messages.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -18,7 +18,7 @@
18
18
  "zod": "4.4.3"
19
19
  },
20
20
  "peerDependencies": {
21
- "openclaw": ">=2026.5.31-beta.3"
21
+ "openclaw": ">=2026.6.1-beta.1"
22
22
  },
23
23
  "peerDependenciesMeta": {
24
24
  "openclaw": {
@@ -84,10 +84,10 @@
84
84
  "allowInvalidConfigRecovery": true
85
85
  },
86
86
  "compat": {
87
- "pluginApi": ">=2026.5.31-beta.3"
87
+ "pluginApi": ">=2026.6.1-beta.1"
88
88
  },
89
89
  "build": {
90
- "openclawVersion": "2026.5.31-beta.3"
90
+ "openclawVersion": "2026.6.1-beta.1"
91
91
  },
92
92
  "release": {
93
93
  "publishToClawHub": true,
@@ -1,3 +0,0 @@
1
- import { t as createMatrixClient } from "./create-client-B4CPKa5P.js";
2
- import "./client-spaouc7I.js";
3
- export { createMatrixClient };