11 Commits

Author SHA1 Message Date
Jason Cat f00971f906 Fix session restore invariants: fail-closed on corrupted tool rows, redact config secrets, and type getSession errors (#79)
* feat: persist chat sessions securely across restarts

Persist session state to disk with safe recovery and secret redaction so chat can continue after server restart.

Made-with: Cursor

* fix: prevent orphan tool messages after session restore

Ensure restored AIMessage tool_calls are reconstructed and sanitize lc_messages to avoid provider 400 errors.

Made-with: Cursor

* fix: harden tool_calls persistence and restore sequencing

Persist explicit AIMessage tool_calls and enforce block-scoped tool message closure/sanitization so restored sessions avoid orphan-tool protocol violations across providers.

Made-with: Cursor

* fix(session): address review — warn on empty tool_call_id; tighten string secret masking

Made-with: Cursor

* fix(session): return 503 for unreadable state; 404 for missing/mismatch; clarify vs review

Made-with: Cursor

* fix(web): typed HttpError for getSession; 404-only local cleanup; bootstrap retry

Made-with: Cursor

* fix(session): fail-closed restore + redact secrets in persisted config

Made-with: Cursor

* fix(session): address review — tool-safe lc trim, header helper, sent_media_total, 3-state bootstrap

Made-with: Cursor

* Sanitize protocol on lc_messages before merging requests

Added sanitization of protocol on sess.lc_messages before building the merged request list for astream to ensure the structure is always sanitized.
2026-04-09 18:42:55 +08:00
Anlittledy f2379278f1 fix: avoid duplicate media system message after language switch (#78) 2026-04-05 09:47:15 +08:00
Henry b7f2075de4 fix: merge multiple SystemMessages into one for LLM compatibility (#77) 2026-04-04 10:10:24 +08:00
Anlittledy 702bf7bece feat: add AI transition workflow (#74)
* feat: add AI transition workflow with runtime config injection and timeline support

* update web hint

* fix ai transition timeline bug

* AI transition generation real-time progress reporting

* update news date

---------

Co-authored-by: 杨其伟 <yangqiwei1@xiaohongshu.com>
Co-authored-by: jcl-2026 <1172688642@qq.com>
2026-04-02 14:13:35 +08:00
Anlittledy 59f35581e9 refine skill routing prompts and skill metadata (#71)
* refine skill routing prompts and skill metadata

* update skill
2026-03-29 16:11:27 +08:00
Anlittledy 57fd7b013f fix: preserve chat context and progress after websocket reconnect (#70) 2026-03-26 10:48:01 +08:00
Anlittledy af5eabdb0e media upload hide internal error (#60) 2026-03-17 17:51:36 +08:00
Jason Cat 5a21409b6b fix: improve error handling for media file save operation (#41) 2026-03-17 17:41:44 +08:00
Anlittledy 1229037f19 refactor: remove developer chat model config (#52)
Co-authored-by: 杨其伟 <yangqiwei1@xiaohongshu.com>
2026-03-11 15:49:20 +08:00
Anlittledy 78b3ef77ca Print the expanded ExceptionGroup to the console. (#34)
Co-authored-by: 杨其伟 <yangqiwei1@xiaohongshu.com>
2026-03-05 20:52:35 +08:00
minipuding e8afe958c7 Clean branch for Open-Storyline push 2026-02-10 15:01:57 +08:00