Commit Graph
27 Commits
Author SHA1 Message Date
yorkhellenandXubin Ren 13dec9d2c2 fix(security): normalize IPv6-mapped IPv4 addresses in SSRF checks
::ffff:127.0.0.1 and ::ffff:169.254.169.254 are IPv6Address objects
that match neither the IPv4 blocklists (127.0.0.0/8, 169.254.0.0/16)
nor the IPv6 ones (::1/128), allowing SSRF bypass via DNS responses
that return IPv6-mapped IPv4 addresses.

Add _normalize_addr() to convert ipv4_mapped IPv6 addresses to their
IPv4 form before blocklist/allowlist matching.
2026-05-30 15:34:49 +08:00
yorkhellenandXubin Ren 52a9300d9e fix(webui): remove eager markdown preload
Remove the eager preloading of markdown/code-highlighting chunk at startup.
The markdown renderer will now only be loaded when actually needed to render content.
2026-05-16 01:42:42 +08:00
yorkhellenandXubin Ren a32be99ddc test(feishu): add config and helper tests for topic_isolation 2026-05-12 11:51:25 +08:00
yorkhellenandXubin Ren 03b357b12d feat(feishu): add topic_isolation config switch 2026-05-12 11:51:25 +08:00
yorkhellenandXubin Ren 843e96f09d fix(feishu): send all messages to topic when in thread 2026-05-09 01:03:57 +08:00
yorkhellenandXubin Ren a2f5de6838 refactor: fix import order for logger in discord.py 2026-05-07 13:07:22 +08:00
yorkhellenandXubin Ren 10a0bb0fb3 refactor: use module-level logger in static methods 2026-05-07 13:07:22 +08:00
yorkhellenandXubin Ren 4773589685 fix: F821 undefined name errors in channels 2026-05-07 13:07:22 +08:00
yorkhellenandXubin Ren 4a4e0af0ba ci: Enable full ruff -F (all F rules) checks 2026-05-07 13:07:22 +08:00
yorkhellenandXubin Ren 0f32c0451e fix: support WhatsApp voice message download 2026-05-04 11:44:25 +08:00
yorkhellenandXubin Ren ee364c6ac1 fix(helpers): restore tiktoken fallback in estimate_prompt_tokens_chain 2026-05-02 00:07:45 +08:00
yorkhellenandXubin Ren 08f326ec55 test: Add tests for sender_id runtime context injection 2026-05-01 19:43:38 +08:00
yorkhellenandXubin Ren c4170fa9ba feat: Add sender_id to LLM runtime context 2026-05-01 19:43:38 +08:00
yorkhellenandXubin Ren 53ca2836e7 fix(memory): also fsync directory for rename durability 2026-04-29 16:57:50 +08:00
yorkhellenandXubin Ren 2af45945e2 fix(memory): ensure atomic write for history.jsonl
Use temp file + os.replace + fsync to prevent partial writes on crash.
Add tests for atomic write behavior and tmp file cleanup on exception.
2026-04-29 16:57:50 +08:00
yorkhellenandXubin Ren 814345dd78 fix: update tests for path_append env dict change 2026-04-26 20:32:38 +08:00
yorkhellenandXubin Ren 2f2ac96ac7 fix: update tests for path_append env dict change 2026-04-26 20:32:38 +08:00
yorkhellenandXubin Ren 23dde7b84c fix: prevent shell injection via path_append in ExecTool 2026-04-26 20:32:38 +08:00
yorkhellenandXubin Ren 076e4166d7 fix(agent): add LLM request timeout to prevent session lock starvation 2026-04-25 03:40:34 +08:00
yorkhellenandXubin Ren 1011ea5ac8 fix(email): ignore self-sent mailbox messages
Skip inbound emails that come from the bot's own configured addresses so a mailbox wired to the same SMTP/IMAP account does not trigger infinite reply loops.
2026-04-17 16:25:16 +08:00
zhangxiaoyu.yorkandXubin Ren e7e1249585 fix(agent): avoid truncate_text name shadowing
Rename the boolean flag in _sanitize_persisted_blocks and alias the imported helper so session persistence cannot crash with TypeError when truncation is enabled.
2026-04-10 17:36:31 +08:00
zhangxiaoyu.yorkandXubin Ren bc2e474079 Fix ExecTool to block root directory paths when restrict_to_workspace is enabled 2026-04-02 04:00:03 +08:00
zhangxiaoyu.yorkandXubin Ren c3c1424db3 fix:register exec when enable exec_config 2026-03-31 12:14:28 +08:00
zhangxiaoyu.yorkandXubin Ren f72ceb7a3c fix:set subagent result message role = assistant 2026-03-18 00:43:46 +08:00
zhangxiaoyu.york 9e2f69bd5a tidy up 2026-03-01 00:51:17 +08:00
zhangxiaoyu.york 5d829ca575 bugfix: remove client.stop 2026-03-01 00:30:03 +08:00
zhangxiaoyu.york b3af59fc8e bugfix: remove client.stop 2026-03-01 00:20:32 +08:00