Conversation
会话内任意位置的消息现在可以删除:被删消息的子消息在事务内重接到其父 消息上,后续消息保留并向前衔接;生成中的消息与会话第一条消息不允许删 除(400 机器错误码),操作记录 delete_message 审计事件。 - 后端新增 DELETE /conversations/:id/messages/:message_id,事务内锁 会话行与目标消息行,软删后递减 MessageCount,并通过反向递归 CTE 主 动失效覆盖边界落在被删消息子树内的压缩快照(splice 会破坏 SnapshotBoundaryAncestorIndex 的 parent 链不可变假设)。 - 发送路径建消息对前补齐会话行 + 父消息行锁与软删校验,避免与并发删 除竞态产生指向已删节点的孤儿消息,冲突时返回 409 conversation.message_parent_deleted。 - prompt 组装新增相邻同角色(user/assistant)消息合并,消除 splice 后历史中连续同角色轮次对严格上游协议的兼容风险;合并在图片上下文注 入之后执行,避免破坏注入的下标对齐。 - 前端用户/助手消息 meta 新增删除按钮(AlertDialog 确认,临时会话与 生成中消息不展示),删除后全量刷新,分支选择由现有 reconcile 逻辑 自动收敛;trash-2 动画图标新增 shake 变体。 - 传输类型 MessageDeleteDTO 从 @deeix/api-contract 派生,契约生成文 件同步再生成;新增 repo/service/prompt 合并三组单测,en-US/zh-CN 文案补齐。
fix: correct UI scrolling and chat anchor navigation
feat: add signed per-user context header for MCP tool calls
…cy and project docs
feat: support OpenRouter tiered pricing and improve billing consistency and project docs
feat: support deleting messages with splice semantics
fix(markdown): normalize nested code fences before rendering
fix: stop raw json noise in upstream sync and mark deactivated models
feat: support OpenRouter image generation endpoint
fix: stop over escaping plain text when pasting rich content as markdown
fix: report locked accounts distinctly instead of invalid credentials
fix: keep tool trace steps visible during long reasoning streams
fix: repair markdown table wrapping and line spacing
fix: stabilize model submenu placement on hover and close
fix: merge leading system messages for OpenAI compatible upstreams
feat: calibrate dark theme contrast and keep color mode per device
feat: 支持省略 Embedding 请求中的 dimensions 参数
feat: end no-text file reindex loops with empty state
chore: bump version to 0.4.2
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
✨ Feature
dimensionsparameter for embedding providers that do not accept it.⚡ Optimization
🐛 Fixed