Alexander Minges
494fa8966a
refactor(matrix): use milliseconds for typing timing constants
2026-02-21 20:45:09 +01:00
Alexander Minges
de5104ab2a
fix(matrix): keep typing indicator during progress updates
2026-02-21 20:44:51 +01:00
Alexander Minges
fcece3ec62
fix(matrix): match fork/main formatting exactly
2026-02-20 18:17:27 +01:00
Alexander Minges
13561772ad
fix(matrix): align with fork/main (docstrings, type annotations, formatting)
2026-02-20 18:15:32 +01:00
Alexander Minges
dd61a9143a
fix: remove accidental whitespace-only formatting changes from schema.py
2026-02-20 18:11:29 +01:00
Alexander Minges
52d086d46a
revert: restore context.py and manager.py to tanishra baseline (out of scope)
2026-02-20 18:08:04 +01:00
Alexander Minges
e8a4671565
test: remove message tool media test (message.py changes out of scope)
2026-02-20 18:06:13 +01:00
Alexander Minges
36d650e475
revert: restore message.py to tanishra baseline (out of scope)
2026-02-20 18:05:00 +01:00
Alexander Minges
334078e242
fix(message): apply media path filtering and drop attachment count from return value
...
Conflict resolution correction: HEAD's message.py retained raw media list and
attachment count in return string, but tests from 3de30bb require stripped/filtered
media_paths and a plain return message. Aligns HEAD behavior with cherry-picked tests.
2026-02-20 18:04:11 +01:00
Alexander Minges
705d5738e3
feat(matrix): reply in threads with fallback relations
...
Propagate Matrix thread metadata from inbound events and attach
m.relates_to
(rel_type=m.thread, m.in_reply_to, is_falling_back=true) to outbound
messages
including attachments. Add tests for thread metadata and thread replies.
2026-02-20 18:03:26 +01:00
Alexander Minges
6a40665753
feat(matrix): support outbound attachments via message tool
...
- extend message tool with optional media paths for channel delivery
- switch Matrix uploads to stream providers and handle encrypted-room payloads
- add/expand tests for message tool media forwarding and Matrix upload edge cases
2026-02-20 18:02:40 +01:00
Alexander Minges
d4d87bb4e5
fix(matrix): block outbound media when maxMediaBytes is zero
2026-02-20 18:02:15 +01:00
Alexander Minges
a28ae51ce9
fix(matrix): handle matrix-nio upload tuple response
2026-02-20 18:02:14 +01:00
Alexander Minges
97cb85ee0b
feat(matrix): add outbound media uploads and unify media limits with maxMediaBytes
...
- Use OutboundMessage.media for Matrix file/image/audio/video sends
- Apply effective media limit as min(m.upload.size, maxMediaBytes)
- Rename matrix config key maxInboundMediaBytes -> maxMediaBytes (no legacy fallback)
2026-02-20 18:02:13 +01:00
Alexander Minges
bfd2018095
docs: update maxMediaBytes documentation to include blocking option
...
Add clarification that setting to 0 blocks all attachments
2026-02-20 18:01:21 +01:00
Alexander Minges
10de3bf329
refactor(matrix): use base media event filter for callbacks
...
- Replaces the explicit media event tuple with MATRIX_MEDIA_EVENT_FILTER
based on
media base classes: (RoomMessageMedia, RoomEncryptedMedia).
- Keeps MatrixMediaEvent as the static typing alias for media-specific
handlers.
- Removes MatrixInboundEvent and uses RoomMessage in mention-related
logic.
- Adds regression tests for:
- callback registration using MATRIX_MEDIA_EVENT_FILTER
- ensuring RoomMessageText is not matched by the media filter.
2026-02-20 17:58:37 +01:00
Alexander Minges
1103f000fc
docs(matrix): clarify m.text body plaintext fallback note
2026-02-20 17:58:06 +01:00
Alexander Minges
9b06f682c3
docs(readme): document matrix e2eeEnabled option
2026-02-20 17:58:02 +01:00
Alexander Minges
566ad1dfc7
feat(matrix): make e2ee configurable with enabled default
2026-02-20 17:57:10 +01:00
Alexander Minges
085a311d4b
docs(matrix): clarify typing keepalive spec notes
2026-02-20 17:56:28 +01:00
Alexander Minges
8b3171ca2b
fix(matrix): include empty m.mentions in outgoing messages
2026-02-20 17:56:24 +01:00
Alexander Minges
ca66ddb0bf
feat(matrix): refresh typing indicator while processing
2026-02-20 17:56:15 +01:00
Alexander Minges
a482a89df6
feat(matrix): support inbound media attachments
2026-02-20 17:56:11 +01:00
Alexander Minges
7b2adf9d9d
docs(matrix): document raw html escaping in markdown renderer
2026-02-20 17:56:07 +01:00
Alexander Minges
6be7368a38
fix(matrix): sanitize formatted html with nh3
2026-02-20 17:55:59 +01:00
Alexander Minges
9b14869cb1
feat(matrix): support inline markdown html for url and super/subscript
2026-02-20 17:55:13 +01:00
Alexander Minges
cc5cfe6847
test(matrix): cover mention policy and sender filtering
2026-02-20 17:55:09 +01:00
Alexander Minges
fa2049fc60
feat(matrix): add group policy and strict mention gating
2026-02-20 17:55:05 +01:00
Alexander Minges
3200135f4b
test(matrix): cover formatted body and markdown fallback
2026-02-20 17:54:42 +01:00
Alexander Minges
e716c9caac
feat(matrix): send markdown as formatted html messages
2026-02-20 17:54:39 +01:00
Alexander Minges
840ef7363f
test(matrix): cover typing indicator lifecycle
2026-02-20 17:54:29 +01:00
Alexander Minges
45267b0730
feat(matrix): show typing while processing messages
2026-02-20 17:54:26 +01:00
Alexander Minges
ffac42f9e5
refactor(matrix): replace logging depth magic number
2026-02-20 17:52:37 +01:00
Alexander Minges
b294a682a8
chore(matrix): route matrix-nio logs through loguru
2026-02-20 17:52:36 +01:00
Alexander Minges
b721f9f37d
test(matrix): cover response callbacks and graceful shutdown
2026-02-20 17:52:34 +01:00
Alexander Minges
9d85393226
feat(matrix): add startup warnings and response error logging
2026-02-20 17:52:33 +01:00
Alexander Minges
7c33d3cbe2
feat(matrix): add configurable graceful sync shutdown
2026-02-20 17:52:32 +01:00
Alexander Minges
988b75624c
test(matrix): add matrix channel behavior test
2026-02-20 17:48:16 +01:00
Alexander Minges
c926569033
fix(matrix): guard store load without device id and allow invites by default
2026-02-20 17:48:15 +01:00
djmaze
d3ddeb3067
fix: activate E2E and accept room invites in Matrix channels
2026-02-20 17:48:14 +01:00
Tanish Rajput
0d3dc57a65
feat: add matrix (Element) chat channel support
2026-02-20 11:57:48 +05:30
Re-bin
d22929305f
Merge PR #820 : fix safety guard false positive on 'format' in URLs
2026-02-19 17:48:37 +00:00
Re-bin
fbfb030a6e
chore: remove network-dependent test file for shell guard
2026-02-19 17:48:09 +00:00
Re-bin
1c51fbeeee
Merge branch 'main' into pr-820
2026-02-19 17:44:30 +00:00
Re-bin
c1296746e3
Merge PR #851 : wait for killed process after shell timeout to prevent fd leaks
2026-02-19 17:43:05 +00:00
Re-bin
fe7b0b64c1
Merge branch 'main' into pr-851
2026-02-19 17:42:23 +00:00
Re-bin
125524f5c2
Merge PR #836 : fix Codex provider routing for GitHub Copilot models
2026-02-19 17:39:52 +00:00
Re-bin
b11f0ce6a9
fix: prefer explicit provider prefix over keyword match to fix Codex routing
2026-02-19 17:39:44 +00:00
Re-bin
d78368bb2f
Merge branch 'main' into pr-836
2026-02-19 17:35:19 +00:00
Re-bin
9a00a274e5
Merge PR #844 : support sending images, audio, and files for Feishu
2026-02-19 17:34:01 +00:00