Gustavo Madeira Santana
de4d36dc22
Matrix: align reaction routing with thread bindings
2026-03-12 16:47:14 +00:00
Gustavo Madeira Santana
8aed5cae0a
Matrix: extract startup maintenance flow
2026-03-12 16:47:13 +00:00
Gustavo Madeira Santana
6ec66d4d0f
Matrix: split monitor verification event routing
2026-03-12 16:47:13 +00:00
Gustavo Madeira Santana
5d3a61027a
Matrix: remove orphaned inbound body helpers
2026-03-12 16:47:13 +00:00
Gustavo Madeira Santana
6de0456738
Matrix: extract inbound route resolution
2026-03-12 16:47:13 +00:00
Gustavo Madeira Santana
cc5ade5893
Matrix: dedupe monitor handler tests
2026-03-12 16:47:12 +00:00
Gustavo Madeira Santana
fd1d5555ad
Matrix: centralize monitor config normalization
2026-03-12 16:47:12 +00:00
Gustavo Madeira Santana
54966deca1
Matrix: extract monitor access state
2026-03-12 16:47:12 +00:00
Gustavo Madeira Santana
0669abdda5
Matrix: remove orphaned send queue
2026-03-12 16:47:12 +00:00
Gustavo Madeira Santana
93114f8918
Matrix: dedupe resolver test harness
2026-03-12 16:47:11 +00:00
Gustavo Madeira Santana
3e3bb5f6f7
Matrix: remove unused internal helpers
2026-03-12 16:47:11 +00:00
Gustavo Madeira Santana
504ce688e5
Matrix: share reusable client bootstrap
2026-03-12 16:47:11 +00:00
Gustavo Madeira Santana
b758666867
Matrix: register thread bindings before client sync
2026-03-12 16:47:11 +00:00
Gustavo Madeira Santana
3541b6f9ea
Matrix: harden live directory lookups
2026-03-12 16:47:11 +00:00
Gustavo Madeira Santana
5613ad679d
Matrix: centralize target normalization
2026-03-12 16:47:11 +00:00
Gustavo Madeira Santana
9878b4743f
Matrix: centralize account config helpers
2026-03-12 16:47:10 +00:00
Gustavo Madeira Santana
4c4b2ba571
Matrix: warn and clean stale managed devices
2026-03-12 16:47:10 +00:00
Gustavo Madeira Santana
df6b6762c0
Matrix: fix verification client lifecycle and quiet CLI noise
2026-03-12 16:47:10 +00:00
Gustavo Madeira Santana
a3573ac71f
Matrix: retry cross-signing after secret storage repair
2026-03-12 16:47:10 +00:00
Gustavo Madeira Santana
46cd37bc0d
Matrix: repair explicit secret storage bootstrap
2026-03-12 16:47:10 +00:00
Gustavo Madeira Santana
fdf7953226
Matrix: preserve owner-signed verification state
2026-03-12 16:47:09 +00:00
Gustavo Madeira Santana
21f1e903a4
Plugins: scope SDK imports and harden Matrix routing
2026-03-12 16:47:09 +00:00
Gustavo Madeira Santana
e80483ff00
poll and profile fixes
2026-03-12 16:47:09 +00:00
Gustavo Madeira Santana
50568f29d5
Matrix: tighten verification trust and expose profile updates
2026-03-12 16:47:09 +00:00
Gustavo Madeira Santana
0fdc404a2b
Matrix: keep default account device fields scoped
2026-03-12 16:47:08 +00:00
Gustavo Madeira Santana
8e962668ce
Matrix: replace legacy plugin with new implementation
2026-03-12 16:47:08 +00:00
Gustavo Madeira Santana
5d5e500475
matrix-js: simplify storage paths
2026-03-12 16:47:07 +00:00
Gustavo Madeira Santana
94f3b1b57d
matrix-js: add account-aware bindings and ACP routing
2026-03-12 16:47:07 +00:00
Gustavo Madeira Santana
d4e3a98613
matrix-js: add startup verification policy
2026-03-12 16:47:07 +00:00
Gustavo Madeira Santana
3eb6c4c8ec
matrix-js: improve thread context and auto-threading
2026-03-12 16:47:06 +00:00
Gustavo Madeira Santana
a670c21ab4
matrix-js: harden reaction handling
2026-03-12 16:47:06 +00:00
Gustavo Madeira Santana
00019c73e4
move matrix-js helpers to be locally scoped
2026-03-12 16:47:06 +00:00
Gustavo Madeira Santana
e07b6072b5
make matrix-js atomic and add poll voting support
2026-03-12 16:47:06 +00:00
Gustavo Madeira Santana
5fddbc1d9b
Matrix-js: sync with main plugin-loading standards
2026-03-12 16:47:05 +00:00
Vincent Koc
f96ba87f03
Zalo: rate limit invalid webhook secret guesses before auth ( #44173 )
...
* Zalo: rate limit webhook guesses before auth
* Tests: cover pre-auth Zalo webhook rate limiting
* Changelog: note Zalo pre-auth rate limiting
* Zalo: preserve auth-before-content-type response ordering
* Tests: cover auth-before-content-type webhook ordering
* Zalo: split auth and unauth webhook rate-limit buckets
* Tests: cover auth bucket split for Zalo webhook rate limiting
* Zalo: use trusted proxy client IP for webhook rate limiting
* Tests: cover trusted proxy client IP rate limiting for Zalo
2026-03-12 12:30:50 -04:00
Vincent Koc
7844bc89a1
Security: require Feishu webhook encrypt key ( #44087 )
...
* Feishu: require webhook encrypt key in schema
* Feishu: cover encrypt key webhook validation
* Feishu: enforce encrypt key at startup
* Feishu: add webhook forgery regression test
* Feishu: collect encrypt key during onboarding
* Docs: require Feishu webhook encrypt key
* Changelog: note Feishu webhook hardening
* Docs: clarify Feishu encrypt key screenshot
* Feishu: treat webhook encrypt key as secret input
* Feishu: resolve encrypt key only in webhook mode
2026-03-12 11:01:00 -04:00
Vincent Koc
3e730c0332
Security: preserve Feishu reaction chat type ( #44088 )
...
* Feishu: preserve looked-up chat type
* Feishu: fail closed on ambiguous reaction chats
* Feishu: cover reaction chat type fallback
* Changelog: note Feishu reaction hardening
* Feishu: fail closed without resolved chat type
* Feishu: normalize reaction chat type at runtime
2026-03-12 10:53:40 -04:00
Lyle
c965049dc6
fix(mattermost): pass mediaLocalRoots through reply delivery ( #44021 )
...
Merged via squash.
Prepared head SHA: 856f11f129
Co-authored-by: LyleLiu666 <31182860+LyleLiu666@users.noreply.github.com >
Co-authored-by: mukhtharcm <56378562+mukhtharcm@users.noreply.github.com >
Reviewed-by: @mukhtharcm
2026-03-12 20:13:51 +05:30
Teconomix
171d2df9e0
feat(mattermost): add replyToMode support (off | first | all) ( #29587 )
...
Merged via squash.
Prepared head SHA: 4a67791f53
Co-authored-by: teconomix <6959299+teconomix@users.noreply.github.com >
Co-authored-by: mukhtharcm <56378562+mukhtharcm@users.noreply.github.com >
Reviewed-by: @mukhtharcm
2026-03-12 18:03:12 +05:30
Nimrod Gutman
4f620bebe5
fix(doctor): canonicalize gateway service entrypoint paths ( #43882 )
...
Merged via squash.
Prepared head SHA: 9f530d2a86
Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com >
Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com >
Reviewed-by: @ngutman
2026-03-12 12:39:22 +02:00
Ayaan Zaidi
783a0d540f
fix: add zalouser outbound chunker
2026-03-12 15:47:12 +05:30
darkamenosa
a6711afdc2
feat(zalouser): add markdown-to-Zalo text style parsing ( #43324 )
...
* feat(zalouser): add markdown-to-Zalo text style parsing
Parse markdown formatting (bold, italic, strikethrough, headings, lists,
code blocks, blockquotes, custom color/style tags) into Zalo native
TextStyle ranges so outbound messages render with rich formatting.
- Add text-styles.ts with parseZalouserTextStyles() converter
- Wire markdown mode into send pipeline (sendMessageZalouser)
- Export TextStyle enum and Style type from zca-client
- Add textMode/textStyles to ZaloSendOptions
- Pass textStyles through sendZaloTextMessage to zca-js API
- Enable textMode:"markdown" in outbound sendText/sendMedia and monitor
- Add comprehensive tests for parsing, send, and channel integration
* fix(zalouser): harden markdown text parsing
* fix(zalouser): mirror zca-js text style types
* fix(zalouser): support tilde fenced code blocks
* fix(zalouser): handle quoted fenced code blocks
* fix(zalouser): preserve literal quote lines in code fences
* fix(zalouser): support indented quoted fences
* fix(zalouser): preserve quoted markdown blocks
* fix(zalouser): rechunk formatted messages
* fix(zalouser): preserve markdown structure across chunks
* fix(zalouser): honor chunk limits and CRLF fences
2026-03-12 16:24:15 +07:00
Xaden Ryan
658bd54ecf
feat(llm-task): add thinking override
...
Co-authored-by: Xaden Ryan <165437834+xadenryan@users.noreply.github.com >
2026-03-12 19:21:35 +11:00
Vincent Koc
4dfd8eea90
BlueBubbles: require confirmed outbound for self-chat cache
2026-03-12 03:22:57 -04:00
Mathias Nagler
e8a162d3d8
fix(mattermost): prevent duplicate messages when block streaming + threading are active ( #41362 )
...
* fix(mattermost): prevent duplicate messages when block streaming + threading are active
Remove replyToId from createBlockReplyPayloadKey so identical content is
deduplicated regardless of threading target. Add explicit threading dock
to the Mattermost plugin with resolveReplyToMode reading from config
(default "all"), and add replyToMode to the Mattermost config schema.
Fixes #41219
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* fix(mattermost): address PR review — per-account replyToMode and test clarity
Read replyToMode from the merged per-account config via
resolveMattermostAccount so account-level overrides are honored in
multi-account setups. Add replyToMode to MattermostAccountConfig type.
Rename misleading test to clarify it exercises shouldDropFinalPayloads
short-circuit, not payload key dedup.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* Replies: keep block-pipeline reply targets distinct
* Tests: cover block reply target-aware dedupe
* Update CHANGELOG.md
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-03-12 03:15:17 -04:00
Vincent Koc
241e8cc553
fix(bluebubbles): dedupe reflected self-chat duplicates ( #38442 )
...
* BlueBubbles: drop reflected self-chat duplicates
* Changelog: add BlueBubbles self-chat echo dedupe entry
* BlueBubbles: gate self-chat cache and expand coverage
* BlueBubbles: require explicit sender ids for self-chat dedupe
* BlueBubbles: harden self-chat cache
* BlueBubbles: move self-chat cache identity into cache
* BlueBubbles: gate self-chat cache to confirmed outbound sends
* Update CHANGELOG.md
* BlueBubbles: bound self-chat cache input work
* Tests: cover BlueBubbles cache cap under cleanup throttle
* BlueBubbles: canonicalize self-chat DM scope
* Tests: cover BlueBubbles mixed self-chat scope aliases
2026-03-12 03:11:43 -04:00
Peter Steinberger
ce5dd742f8
build: sync versions to 2026.3.11
2026-03-12 04:01:57 +00:00
Peter Steinberger
0e397e62b7
chore: bump version to 2026.3.10
2026-03-11 23:29:53 +00:00
Peter Steinberger
9c81c31232
chore: refresh dependencies except carbon
2026-03-11 20:10:33 +00:00
ademczuk
8618a711ff
fix(voice-call): add speed and instructions to OpenAI TTS config schema ( #39226 )
...
Merged via squash.
Prepared head SHA: 775e3063b5
Co-authored-by: ademczuk <5212682+ademczuk@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-03-11 23:15:48 +05:30