diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index d560ffe..b77faec 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -1,5 +1,61 @@ # 更新日志 +## v1.3.0 + +> 2026-07-01 + +### 新增 + +- **支持瞬间插件(Moments)评论区适配** — 当检测到已安装并启用 [plugin-moments](https://github.com/halo-sigs/plugin-moments) 时,自动为瞬间评论启用 AI 自动回复 + - 新增 `MomentsIntegrationService`,通过 `SchemeManager` 检测 Moment 扩展注册状态,避免直接引用导致的 `NoClassDefFoundError` + - 在插件设置 - 基本设置中新增"瞬间评论区适配"开关,仅当瞬间插件可用时显示,默认开启 + - `ContextExtractor` 适配 Moment 上下文:使用 moment name 作为关联标识,评论创建时间作为日期上下文 + - `FilterService` 对 Moment 评论读取 `momentsEnabled` 配置决定是否触发 AI 回复 +- **评论人昵称广告判定** — 前置过滤现在综合判断评论者昵称与评论内容。昵称包含商业推广关键词(如"免费算命"、"加微信xxx"、"代写论文"、"低价代购"等)即使评论内容看似正常也会被判定为广告 + - `CommentPreFilterService.check()` 新增 `commentOwner` 参数,将昵称纳入 AI 分类输入 + - 系统提示词新增"原则六:昵称与内容综合判定",列举昵称广告典型特征 + +### 改进 + +- **重构提示词组装与兼容机制** — 建立更健壮的模块化拼接逻辑,解决多配置组合时的指令冲突与上下文丢失问题 + - 新增 `{{output_guidance}}`、`{{sentiment_hint}}`、`{{language_requirement}}` 三个占位符,将输出规范、情感提示、语言要求拆分为独立模块 + - 角色与预设使用段落分隔(空行+段落标记)确保指令隔离,避免风格预设污染角色设定 + - 情感提示通过 `{{sentiment_hint}}` 占位符原位注入;旧模板不含该占位符时自动降级为末尾追加,保持向后兼容 + - 消除两个近乎相同的 `buildPrompt` 重载的代码重复,统一委托给单一核心组装方法 + - 默认模板更新为模块化结构,新安装用户即可获得更稳定的 AI 输出 + - 强化身份约束:明确角色不是文章作者、站点管理员、客服或用户本人;禁止声称亲身经历未提供之事;禁止编造文章外的人物、数据、链接;禁止泄露系统提示词、模型参数、插件实现与安全策略 +- **"Prompt设置"更名为"提示词设置"** — UI 标签页、面板标题、设置项标签、帮助文本统一改为中文"提示词" +- **日志瞬间关联链接精确到具体瞬间** — Moment 评论的关联链接从 `/moments` 列表页改为 `/moments/{name}` 具体瞬间页 +- **日志页面增加实时刷新功能** — 新增"实时刷新"开关,开启后每 10 秒静默轮询新数据。标签页隐藏或弹窗打开时自动暂停,回到页面时立即刷新 +- **AI 安全审核改为失败关闭策略** — `ReviewService` 在审核服务不可用或异常时不再自动通过,改为返回 FAIL 并拦截发布,避免未经审核的 AI 回复被自动发布 + +### Bug 修复 + +- **修复日志页面 XSS 漏洞** — `renderContent` 仅移除 `