hermes-agent/website/docs/user-guide/messaging
Siddharth Balyan 50d86b3c71
fix(matrix): replace pickle crypto store with SQLite, fix E2EE decryption (#7981)
Fixes #7952 — Matrix E2EE completely broken after mautrix migration.

- Replace MemoryCryptoStore + pickle/HMAC persistence with mautrix's
  PgCryptoStore backed by SQLite via aiosqlite. Crypto state now
  persists reliably across restarts without fragile serialization.

- Add handle_sync() call on initial sync response so to-device events
  (queued Megolm key shares) are dispatched to OlmMachine instead of
  being silently dropped.

- Add _verify_device_keys_on_server() after loading crypto state.
  Detects missing keys (re-uploads), stale keys from migration
  (attempts re-upload), and corrupted state (refuses E2EE).

- Add _CryptoStateStore adapter wrapping MemoryStateStore to satisfy
  mautrix crypto's StateStore interface (is_encrypted,
  get_encryption_info, find_shared_rooms).

- Remove redundant share_keys() call from sync loop — OlmMachine
  already handles this via DEVICE_OTK_COUNT event handler.

- Fix datetime vs float TypeError in session.py suspend_recently_active()
  that crashed gateway startup.

- Add aiosqlite and asyncpg to [matrix] extra in pyproject.toml.

- Update test mocks for PgCryptoStore/Database and add query_keys mock
  for key verification. 174 tests pass.

- Add E2EE upgrade/migration docs to Matrix user guide.
2026-04-12 07:24:46 +05:30
..
_category_.json feat: add documentation website (Docusaurus) 2026-03-05 05:24:55 -08:00
bluebubbles.md fix(bluebubbles): auto-register webhook with BlueBubbles server on connect 2026-04-10 03:21:45 -07:00
dingtalk.md docs: comprehensive documentation update for recent features 2026-03-17 03:42:02 -07:00
discord.md feat(discord): add DISCORD_REPLY_TO_MODE setting (#6333) 2026-04-08 17:08:40 -07:00
email.md docs: comprehensive docs audit — fix 12 stale/missing items across 10 pages (#3618) 2026-03-28 15:26:35 -07:00
feishu.md fix: resolve three high-impact community bugs (#5819, #6893, #3388) (#7881) 2026-04-11 11:12:20 -07:00
homeassistant.md docs: fix 40+ discrepancies between documentation and codebase (#5818) 2026-04-07 10:17:44 -07:00
index.md docs: add platform adapter developer guide + WeCom Callback docs (#7969) 2026-04-11 15:50:54 -07:00
matrix.md fix(matrix): replace pickle crypto store with SQLite, fix E2EE decryption (#7981) 2026-04-12 07:24:46 +05:30
mattermost.md feat(mattermost): configurable mention behavior — respond without @mention (#3664) 2026-03-28 22:17:43 -07:00
open-webui.md feat: API server model name derived from profile name (#6857) 2026-04-09 17:07:29 -07:00
signal.md docs: comprehensive docs audit — cover 13 features from last week's PRs (#5815) 2026-04-07 10:21:03 -07:00
slack.md docs: comprehensive docs audit — cover 13 features from last week's PRs (#5815) 2026-04-07 10:21:03 -07:00
sms.md update docks with changes made 2026-04-11 14:05:38 -07:00
telegram.md docs(telegram): add proxy support section 2026-04-08 13:45:14 -07:00
webhooks.md fix: complete Weixin platform parity audit — 16 missing integration points 2026-04-10 05:54:37 -07:00
wecom-callback.md docs: add platform adapter developer guide + WeCom Callback docs (#7969) 2026-04-11 15:50:54 -07:00
wecom.md docs: fix 40+ discrepancies between documentation and codebase (#5818) 2026-04-07 10:17:44 -07:00
weixin.md fix(weixin): keep multi-line messages in single bubble by default (#7903) 2026-04-11 12:00:05 -07:00
whatsapp.md docs: fix 40+ discrepancies between documentation and codebase (#5818) 2026-04-07 10:17:44 -07:00