INSERT INTO ias_upgrade_logs ( version, released_at, title, description, changes, modules ) VALUES ( '0.2.19', '2026-07-08T00:00:00+08:00', '上下文 raw 记录与工具调用说明', '上下文消息支持 raw JSON 朔源入库,/new 可打断当前工具操作;动态附加系统提示词改为随能力列表展示的工具调用说明。', '[ "/new 现在会取消同一用户作用域正在运行的 LLM/工具任务,清除当前 turn,并丢弃迟到的 assistant、工具提醒或工具结果。", "上下文消息新增 raw_message JSONB 原文记录;读取上下文时优先从 raw JSON 重建 content、tool_calls 和 tool_call_id,旧字段继续兼容历史数据。", "微信入口会把 message_id、session_id、group_id 和 create_time_ms 带入 raw 记录;同一 session 内相同外部消息 ID 的重复用户消息会自动去重。", "群聊上下文 scope 现在优先使用 group_id,避免同一发送者在私聊和不同群聊之间串上下文;私聊继续保持原有 channel:account_id:from_user_id 形式。", "数据库会先自动结束同一 scope 中较旧的重复活跃会话,再新增同一 scope 仅允许一个活跃上下文会话的唯一约束,避免异常重试或多实例情况下产生隐性多活会话。", "模型响应兼容 content=null 的纯工具调用场景,请求消息不再序列化空 tool_call_id/tool_calls 字段。", "动态附加系统提示词改为工具调用说明,不再进入系统提示词,只随 query_capabilities 展示。", "新增内部接口 POST/PATCH /v1/context/tool-instructions 和 API 能力 record_tool_call_instruction,用于记录用户提供的工具调用规则、稳定调用顺序和 AI 总结出的调用经验。", "上下文模拟器展示独立工具调用说明,并在 messages 预览中保留 tool_calls、tool_call_id 和 raw_message,便于观察上下文组成。", "数据库新增 ias_context_messages.raw_message、ias_context_messages.external_message_id、ias_context_sessions 活跃会话唯一约束和 ias_tool_call_instructions 表,并迁移旧 ias_additional_system_prompts 中已有内容。" ]'::jsonb, '{ "ias-common": "0.1.2", "ias-ai": "0.1.9", "ias-wechat": "0.1.0", "ias-context": "0.1.4", "ias-http": "0.1.12", "ias-mail": "0.1.15", "ias-service": "0.1.16", "ias-main": "0.2.19" }'::jsonb ) ON CONFLICT (version) DO UPDATE SET released_at = EXCLUDED.released_at, title = EXCLUDED.title, description = EXCLUDED.description, changes = EXCLUDED.changes, modules = EXCLUDED.modules;