clown145 and SXP-Simon
c18224cb82
[v4.11.0] - ✨ 新增 QQ 官方机器人群聊分析与专用 Markdown 报告 (@clown145 #206 )
...
* feat: add QQ official bot group analysis support
* fix: use text progress replies for QQ official bot
* fix: harden QQ official proactive reporting
* feat: enhance QQ official markdown reports
* refactor: isolate QQ official markdown reporting
* fix: restore platform adapter exports
* style: format QQ official changes
* fix(main): 添加 html_render 类型声明和 Callable 导入
为 self.html_render 属性添加显式类型声明,解决定时任务中可能因缺少类型注解导致的隐式错误。
* fix(analysis): 消除 execute_daily_analysis 中重复的 bot_self_ids 赋值
去除第二次冗余的 config_manager.get_bot_self_ids() 调用,直接复用已获取的变量。
* cleanup(domain): 移除未使用的分析器适配器和死代码服务文件
删除 golden_quote_analyzer.py、topic_analyzer.py、user_title_analyzer.py(均为未被引用的接口+适配器包装)report_generator.py(旧的文本报告生成器)statistics_calculator.py(与 StatisticsService 功能重复)更新 domain/services/__init__.py 移除对上述文件的引用。
* cleanup(domain): 移除冗余的实体和值对象文件,收敛数据模型至 domain/models/data_models.py
删除 analysis_result.py(与 data_models.py 重复的 SummaryTopic/UserTitle/GoldenQuote 等类定义)value_objects/golden_quote.py、statistics.py、topic.py、user_title.py(均为未被引用的 frozen dataclass 迁移残留)。所有活跃代码已统一导入 domain/models/data_models.py。
* refactor(llm): 抽取 _make_session_id 辅助方法消除重复代码
在 5 个方法(analyze_topics、analyze_user_titles、analyze_golden_quotes、analyze_all_concurrent、analyze_incremental_concurrent)中出现完全相同的 datetime.now().strftime(...) + umo 拼接逻辑,已提取为 _make_session_id 静态方法。
* refactor(message): 正则表达式提升为模块级常量避免重复编译
DISCORD_CUSTOM_EMOJI_PATTERN 和 COMMAND_PATTERN 从类属性移至模块级常量,避免每次实例化 MessageCleanerService 时重新编译正则。
* arch(domain): 定义 IActivityVisualizer 接口并通过依赖注入消除领域层反向依赖
创建 IActivityVisualizer 接口于 domain/repositories/visualization_repository.py,StatisticsService 改由依赖注入接收该接口;ActivityVisualizer 继承接口。消除原 StatisticsService 直接 import infrastructure.visualization 的 DDD 违规。
* fix(main): 补全 Callable 导入和 html_render 类型声明
初次提交(877adb6)因 git add -p 交互式分块时 BOM 导致错误的 hunk 被暂存,Callable 导入和 html_render 类型声明丢失。本次补全这两项修改。
* fix(platform): 补充 QQOfficialAdapter、TelegramAdapter、DiscordAdapter 导出
* refactor(main): 提取内嵌的文本报告生成/发送函数为独立类方法
将 _send_analysis_report 方法中的 generate_text_reports() 和 send_text_reports() 内嵌异步函数提取为 _generate_text_reports 和 _send_text_reports 私有方法。减少闭包复杂度,提升可维护性。
* cleanup(config): 移除废弃的 get_qq_official_t2i_activity_histogram_enabled 向后兼容方法
删除 config_manager.py 中的旧名别名方法,简化 qq_official_markdown.py 中对应的 getattr 回退逻辑为直接方法调用,移除测试中专门验证旧名兼容性的 LegacyDisabledConfig 测试用例。该兼容层仅在迁移期间临时存在,现已完成过渡。
* fix(types): 修复 Pylance 类型告警 — platform_key 未绑定、int(object) 和 template.filename 可能为 None
platform_group_registry.py: 将 platform_key 定义提前,消除 Pylance reportPossiblyUnboundVariable 告警。
qq_official_markdown.py: 将 int(value or 0) 改为 int(value) if value is not None else 0,消除 reportArgumentType 告警。
templates.py: 在使用 template.filename 前增加 None 检查,消除 str|None 不可分配给 str 的告警。
qq_official_adapter.py: 为 post_group_message 添加类型忽略注解,消除 await 不可等待对象的告警。
* fix(types): 修复残留的 Pylance 类型告警
platform_group_registry.py: 将 (platform_key, group_id) 改为 (str(platform_key), group_id),消除 str|None 不可分配给 str 的 reportArgumentType
qq_official_markdown.py: int(value) 添加 # type: ignore[arg-type],消除 object 不可分配给 ConvertibleToInt
qq_official_adapter.py: 移除无意义的中间变量,await 行直接添加 # type: ignore[arg-type]
* docs(message): 更新 MessageProcessingService 的文档和注释,消除 Telegram 特殊性表述
类 docstring:移除 '维护 Telegram 群组注册表' 等过时描述,补充 QQ 官方去重职责。
group_registry.upsert 注释:改为泛化的跨平台描述,不再限定 Telegram。
_extract_event_timestamp / _reserve_event_id / _commit_event_id / _release_event_id:英文 docstring 统一为中文。
* docs(message): 修正类注释中只提 QQ 官方的问题,明示 Telegram 也由本服务处理
Telegram 和 QQ 官方消息都经过 MessageProcessingService.process_message()。修正前类 docstring 只提了 QQ 官方的事件去重,缺少 Telegram 作为主要调用者的说明。
* fix(types): 修正 _sanitize_analysis_result_for_export 返回类型注解
函数声明 -> dict 但 _sanitize_export_identity_text 可返回 str|dict|list,Pylance 报 reportReturnType。
改为 -> dict[str, Any] 准确表达实际返回类型,补充缺失的 from typing import Any。
* fix(types): 抑制 Pylance reportReturnType 误报
_sanitize_analysis_result_for_export 的 analysis_result 参数运行时始终为 dict,但 _to_plain_export_data 递归返回 Any 导致 Pylance 推导出 str|dict|list 联合类型。
添加 # type: ignore[return-type] 抑制此误报。
* fix(report): 渲染匿名模式下的未知引用 token 不再静默丢弃
当 hide_user_names=True 且 [id] 不在 known_ids 中时,之前返回空 Markup 导致 token 被静默移除,可能扭曲文本语义。改为返回转义后的原始 [id] 字符串,保留文本布局和语义,同时不泄露身份信息。
参考 Sourcery AI code review 建议。
* fix(import): 避免从 astrbot.core 直接导入 File,优先使用公开 API
astrbot.core 是内部模块,不在公开 API 契约中,可能随版本变化。
改为 try 优先导入 astrbot.api.message_components.File(公开 API),
失败时回退到 astrbot.core.message.components.File(向后兼容)。
同时修复 main.py 和 qq_official_adapter.py 两处导入。
* fix(import): 回退 try/except 伪装,改为直接导入 + 风险注释
astrbot.api.message_components 不存在,try/except 永远走 except 分支,是无效代码。
改为直接 from astrbot.core.message.components import File,用注释说明这是内部 API 可能变化。
* fix(ruff): 代码质量
* docs(README): 调整文档说明,删除 lark 相关的描述和功能标识
* docs(desc): 更新 desc
* fix(message): 将 TG 和 QQ 官方消息缓存成功日志降为 debug
* perf(message): 将 _extract_event_timestamp 延迟到 QQ 官方分支内计算
该时间戳仅用于 QQ 官方消息的 history_content 元数据,但对所有平台都执行了深度 getattr 链。
改为只在 QQ 官方分支内延迟计算,消除 Telegram 等平台上每次消息的白算开销。
* chore(CHANGELOG)
---------
Co-authored-by: SXP-Simon <sxp20061207@163.com >
2026-07-20 03:24:50 +08:00
香草味的纳西妲喵
a36d339f0f
feat: 新增模板 ”BlueArchive“ 蔚蓝档案 ( #196 )
...
* feat: 新增渲染模板”BlueArchive“(蔚蓝档案)
* 修复图片无法显示
2026-07-12 12:21:23 +08:00
e53016eb01
feat(llm): 重构并优化模型请求的重试与降级补偿机制 ( #195 )
...
* refactor: optimize LLM fallback strategy using a unified attempt queue (Strategy B)
* refactor: apply exponential backoff, fix format state bleeding, and update typing to Any
* fix: avoid false breaker failures in LLM fallback
* style: format llm_utils.py with ruff
* fix: resolve possibly unbound variable warning in llm_utils.py
* refactor: replace loose Any type annotations with precise Context, ConfigManager, JSONValue, and LLMResponse
* docs: update call_provider_with_retry docstring and timeout comments
---------
Co-authored-by: Rat0323 <261020116+Rat0323@users.noreply.github.com >
Co-authored-by: SXP-Simon <sxp20061207@163.com >
2026-07-08 11:28:16 +08:00
Hengjie Wang and SXP-Simon
83486de1d1
feat: 支持可选的流式 LLM 调用 ( #181 @anchorAnc)
...
* feat: add optional streaming LLM provider call
* fix(llm_utils): code quality
---------
Co-authored-by: SXP-Simon <sxp20061207@163.com >
2026-05-01 18:17:43 +08:00
SXP-Simon and Copilot
bb04114cdb
[v4.10.2] - ✨ Telegram 头像处理修复,支持多地区渲染环境与自定义镜像
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-25 12:35:18 +08:00
SXP-Simon
948bfb1b5b
refactor(render): 解决国内可能存在的资源访问问题,新增大陆资源和海外资源可选项,允许用户根据服务器位置选择不同的资源策略,并且允许自定义资源镜像站
...
- Updated language attributes in HTML templates to dynamically set based on `t2i_font_source`.
- Replaced hardcoded Google Fonts links with dynamic links using `t2i_google_fonts_mirror` and `t2i_gstatic_mirror`.
- Adjusted font-family declarations to conditionally include 'Noto Sans SC' and 'Noto Sans TC' based on the `t2i_font_source`.
- Ensured consistent formatting and style across various templates including image, quote, topic, and user title items.
- Added missing newlines at the end of several files for consistency.
2026-04-25 12:22:36 +08:00
SXP-Simon
fc843fac03
feat: 优化 T2I 渲染与自定义配置
...
1. 支持配置两轮 T2I 渲染策略,允许用户自定义图片格式(PNG/JPEG)、质量、分辨率及超时时间。
2. 实现 T2I 返回 HTML 错误页的自动识别与摘要提取(如 502 Bad Gateway),提升故障排查效率。
- 参考 #174 关于 T2I 动态超时与配置的建议
- 参考 #171 关于处理 T2I 返回 HTML 错误信息的建议
- 解决了 [Feature Request] 支持配置 PNG/JPEG 渲染优先级,避免大报告场景下因本地大图保护而回退为文件发送 #164
2026-04-23 08:43:51 +08:00
SXP-Simon
b119ea741e
feat(album): 支持 LLBot 群相册接口并优化 OneBot 适配器
2026-04-22 15:15:59 +08:00
SXP-Simon
ed85876b36
feat(mbti): 替换 mbti 简单实现 sbti acgti 功能
2026-04-13 21:43:25 +08:00
Shiitin
911b8b2fb2
feat(html): 增加了html_only_url选项,使在选择输出格式为html时可以单独发送BaseURL ( #166 @shiitin)
...
* 更改了AstrBot中面板的的设置项,增加了html_only_url选项
* 增加了html_only_url
* 增加了单独发送URL
在html_only_url设置被打开且配置了Base URL后,将会单独发送URL
* 加入测试日志,尝试解决存在问题
* 加入测试日志,尝试解决存在问题
* 删除了定时触发部分的测试日志
* 修改了手动触发部分的发送HTML的判断
* 修改了main.py的单行长度过长问题
* 修复了dispatcher.py的缩进问题
2026-04-12 22:03:45 +08:00
SXP-Simon
93b2b847ef
fix(output_format): 改为 options 形式处理,提升用户体验
2026-04-07 22:27:34 +08:00
SXP-Simon
ae38febca2
fix(pdf): 删除 PDF 模块和相关的功能
2026-04-07 22:17:09 +08:00
SXP-Simon
a8a22233d4
fix(ChatQualityAnalyzer): 手动 apply_persona_reinforcement
2026-04-04 20:44:36 +08:00
SXP-Simon
92a365475c
feat(persona): 人格设定功能增强,支持插件指定和会话继承的人格分析
2026-04-04 19:40:30 +08:00
SXP-Simon
5375659769
fix(conf): 增强服务稳定性
2026-04-04 19:40:30 +08:00
凉雨
a5c3aa2af1
ATRI风格模板 ( #154 )
...
* Add files via upload
* Create test
* Add files via upload
* Delete src/infrastructure/reporting/templates/ATRI/test
* Add files via upload
2026-04-03 13:51:10 +08:00
leko and SXP-Simon
47eeff3f61
fix(template-utils): str.format -> string.Template ( #149 )
...
* feat: upgrade prompt templates from str.format to string.Template for improved compatibility
* fix(get_astrbot_data_path): fallback 到 get_astrbot_data_path 方法
* feat: upgrade prompt templates from str.format to string.Template for improved compatibility
* fix: strict mode
* fix: 补齐文件名格式的自动迁移
* fix(ChatQualityAnalyzer): 删除无效的 prompt 提示语句
* ruff
---------
Co-authored-by: SXP-Simon <sxp20061207@163.com >
2026-04-02 16:40:34 +08:00
SXP-Simon
5e2da8c852
fix(get_astrbot_data_path): fallback 到 get_astrbot_data_path 方法
2026-04-02 15:25:07 +08:00
SXP-Simon
05836f64f2
fix: 定时任务超时问题优化
...
Fixes #141
定时分析任务间隔启动,放宽超时配置限制
2026-04-01 21:14:00 +08:00
leko and SXP-Simon
8ba5f69788
feat: 檔案名稱模板支援 ULID 和資料夾路徑 ( #146 @lekoOwO)
...
* feat: Enhance HTML report generation and dispatching with captions
* chore: apply ruff fixes
* fix(ReportGenerator): update HTML caption for report generation
* fix(ReportGenerator): encode filename in HTML report caption URL
* fix(ReportGenerator): refactor golden quotes handling for clarity and consistency
* feat(ReportGenerator): enhance filename formatting with ulid support and path sanitization
* fix(ReportGenerator): enhance path validation and filename uniqueness in report generation
* fix: pylance type error and ruff
* fix: 路径默认使用 ulid 变量
---------
Co-authored-by: SXP-Simon <sxp20061207@163.com >
2026-04-01 20:38:57 +08:00
3662ac3d75
feat(html): Add HTML output format support ( #143 @lekoOwO)
...
* feat: add HTML output format support
- Add HTML settings section to _conf_schema.json with base URL and output directory configuration
- Add HTML configuration methods to ConfigManager (get_html_output_dir, get_html_base_url, get_html_filename_format)
- Create html_template.html files for all themes (fallback to image_template.html)
- Implement generate_html_report method in ReportGenerator to save HTML and JSON files
- Update main.py to handle HTML output format and send both file and URL if base_url is configured
- Update set_output_format command to include HTML as a valid format option
Co-authored-by: lekoOwO <20151124+lekoOwO@users.noreply.github.com >
* feat: enhance JSON serialization in HTML report generation
* fix: 优化输出目录获取逻辑
---------
Co-authored-by: anthropic-code-agent[bot] <242468646+Claude@users.noreply.github.com >
Co-authored-by: lekoOwO <20151124+lekoOwO@users.noreply.github.com >
Co-authored-by: SXP-Simon <sxp20061207@163.com >
2026-03-31 20:06:57 +08:00
SXP-Simon
4200631f17
fix(HatsuneMiku): 完善
2026-03-28 21:18:50 +08:00
SXP-Simon
7e741854a9
feat(response_format): 使用 OpenAI 格式的 response_format 参数约束 json 格式化数据生成,并且兼容旧版本逻辑,等待本体合并相关参数的传入
2026-03-26 22:56:02 +08:00
SXP-Simon
9ed4771730
feat: 完善自动分析名单调度与面板配置说明
...
- 重构自动分析调度流程:以分层名单解析目标群组,统一报告入口,并按群组模式分发传统/增量任务。
- 新增定时名单与增量名单配置能力:补充 scheduled_group_list(_mode)、incremental_group_list(_mode)、incremental_fallback_enabled。
- 优化失败兜底策略:增量最终报告在超时、异常或无有效结果时,可回退至传统全量分析。
- 完善配置与文档说明:在 _conf_schema.json 与 README 中补充面板操作指引、判定顺序与边界场景说明。
- 兼容旧配置行为:保留废弃接口,并在配置管理中统一名单匹配语义(UMO/群号兼容)。
2026-03-26 19:23:49 +08:00
lingyun14
664918e28f
feat: 新增文本/表情回复模式开关) ( #123 @lingyun14beta)
...
fixes #115
2026-03-24 00:03:29 +08:00
SXP-Simon
fcffe7d35a
fix(quality_summary): 优化增量分析逻辑,优化提示词
2026-03-23 13:38:12 +08:00
NyaaByte
4ffcb3065f
fix: 修改提示词同时添加后端校验,保证总占比不超过 100% ( #119 @J621111)
...
* fix: 修改提示词同时添加后端校验,保证总占比不超过 100%
* fix: 将 ai 返回的占比限制在 [0, 100]
2026-03-23 00:42:18 +08:00
SXP-Simon
9a35ed9600
feat(chat_quality_analysis): chat_quality_analysis 模块
2026-03-23 00:42:18 +08:00
SXP-Simon
cd6a6294e1
feat(增量分析): 更新增量分析配置,增加安全上限并优化消息拉取逻辑
2026-03-20 23:59:24 +08:00
SXP-Simon
4cae39d153
feat(分析功能): 添加人格设定的配置选项,并更新相关提示词构建逻辑
...
feat(persona): 自动检测当前群聊激活的对话所绑定的性格
2026-03-16 23:46:03 +08:00
SXP-Simon
4813c8e3df
feat(金句分析): 明确告知 LLM 在 reason(选择理由/锐评)中提到群成员时,应使用 [用户ID] 格式
2026-03-13 17:34:58 +08:00
SXP-Simon
1ae3e877f2
fix: 重构金句分析匹配机制 ( #104 )
...
- [修复] 尝试解决金句头像无法显示的问题。通过将 Prompt 输入改为 [user_id] 标识符,实现 100% 准确的身份回填,彻底消除了由于 LLM 微调内容导致的匹配失败。
- [警告] 强制初始化金句提示词,丢弃原本用户可能自定义的金句提示词模板。重命名配置项为 golden_quote_v2_prompt,避免用户更新后旧版本提示词干扰导致 LLM 金句分析功能失效。
2026-03-13 17:09:42 +08:00
SXP-Simon
1e3d3b922c
feat: 新增群相册上传严格模式
...
- 在 _conf_schema.json 中增加 group_album_strict_mode 开关
- 修改 ReportDispatcher,在严格模式下禁止回退到默认相册
- 优化 OneBotAdapter 的日志输出,使其符合决策逻辑
2026-03-12 15:16:43 +08:00
SXP-Simon
87d5cccdd4
[v4.8.0] - perf(concurrency): 实现群聊分析任务锁及全局资源并发限流控制,增强重试管理器
2026-03-03 21:24:43 +08:00
SXP-Simon
7850697f1a
refactor(perf): 建立三级资源防线并优化并发限流配置
...
- 【异常处理优化】引入自定义任务重复异常,精准区分“因重复运行而跳过”与“实际分析取消”两种不同语义,提升调度健壮性。
- 【三级并发控制架构】针对不同层级的资源消耗,建立了完整的限流保护体系:
- 入口层:控制同时处于活跃状态的任务总数,防止瞬时加载大量消息导致服务器内存溢出 (OOM);
- 接口层:全局限制 LLM API 并发请求数,确保严格遵守服务商的频率限制 (RPM);
- 渲染层:全局限制浏览器图片生成进程,保护物理 CPU 与内存不被高能耗渲染任务耗尽。
- 【配置体验升级】新增「并发限流设置」配置组,统一收纳核心性能参数,并提供面向普通用户的防坑说明与更稳健的默认值。
- 【代码清理】移除陈旧的兼容逻辑与冗余参数,统一配置命名规范。
- 【功能精化】重排增量分析逻辑,确保在任务入口与分段处理流程中均有可靠的信号量保护。
- 【细节完善】优化群文件及群相册上传设置的文案描述,明确功能支持范围与权限要求。
2026-03-03 21:07:51 +08:00
SXP-Simon
ee0bf037b8
feat: 实现群聊分析任务锁及全局资源并发限流控制
...
1. 任务锁定机制 (Group Task Locking):
- 在应用服务层实现基于群组和任务类型的异步锁,使用 asynccontextmanager 生成器函数确保同一群聊在同一时间只能执行一个分析任务。
- 使用弱引用字典 (WeakValueDictionary) 管理锁实例,防止长期的内存占用。
- 在指令入口增加对 CancelledError 的捕获,当任务冲突时向用户反馈“任务正在执行中”的友好提示。
2. 全局并发限流重构 (Resource-level Throttling):
- 资源层限流下沉:将并发控制中心从调度层迁移至具体的资源处理层(T2I/LLM)。
- T2I 渲染保护:在报告生成器中引入全局信号量,严格控制 T2I 引擎的瞬时负载。
- LLM API 保护:在应用服务层引入全局信号量,平滑所有分析请求对 LLM 提供商接口的请求频率。
- 调度逻辑简化:移除调度器内部冗余的信号量,使其仅专注于分发逻辑与 Stagger(交错启动)平滑。
3. 调度与反馈优化:
- 自动分析调度器增加对“跳过”任务的独立统计,并在执行报告中清晰展示“成功、跳过、失败”的具体数量。
- 优化了管理测试指令和增量分析指令的异常处理逻辑。
4. 消息重复发送防护:
- 在重试组件中增加基于消息历史记录的探活逻辑。在重试发送前先核实记录,确认是否已因网络抖动导致“假失败”但已实达,有效拦截重复消息。
2026-03-03 21:07:51 +08:00
RichardLiu
ba30818212
feat(onebot): 新增可选 Base64 图片传输开关 ( #89 )
...
* feat(onebot): add optional base64 image transport toggle
* fix(onebot): logger 信息增强
* fix(base64): 默认开启
2026-02-22 15:08:37 +08:00
SXP-Simon
626a890a58
[v4.7.9] feat(Onebot): 重构 OneBot 消息拉取逻辑,采用分页回溯策略;新增分析报告同步上传至群文件和群相册的功能
2026-02-21 19:40:54 +08:00
SXP-Simon
de3c189d4f
feat: 增强图片上传能力并完成核心架构类型重构
...
- 重构: 优化主类命名逻辑,提升多平台架构的可读性与通用性。
- 功能: 新增分析报告同步上传至群文件和群相册的功能,支持自动化文件管理与清理。
- 类型: 全面修正静态类型错误,确保各分析器模块与基类接口签名严格对齐。
- 优化: 改进内部类成员标注,解决可选参数与类型推断在透传过程中的不匹配问题。
- 稳健性: 完善网络请求超时处理、临时资源管理以及可选依赖项的动态加载逻辑。
- 配置: 扩展配置管理项,支持自定义上传开关、目标目录以及 PDF 渲染参数。
2026-02-21 19:30:51 +08:00
SXP-Simon
36a4819282
chore: 更新 demo 图资源
2026-02-12 21:00:08 +08:00
SXP-Simon
8c58a7b3d3
feat(template): retro_futurism 调整和 hack 模板
2026-02-12 19:55:24 +08:00
SXP-Simon
c2df2f906c
feat(template): 将模板选择改为 options,方便配置
2026-02-12 15:52:30 +08:00
SXP-Simon
2cd97a73b7
fix(debug): 增加每次增量分析完成后发送的配置,用于调试
2026-02-10 23:16:07 +08:00
SXP-Simon
5a81ffea20
refactor(话题分析): 采用 ID-Only Prompt 策略优化头像展示
...
- TopicAnalyzer: 仅向 LLM 发送 [ID] 而非昵称,减少 Token 并消除歧义
- _conf_schema.json: 更新默认 Prompt,强制要求 LLM 输出 ID 引用
- Logic: 后端负责将 ID 映射回昵称,实现精确的头像关联
2026-02-10 21:25:25 +08:00
SXP-Simon
472c78e622
feat(话题分析): 用户头像引用展示
...
- TopicAnalyzer: Prompt中包含 [user_id],引导LLM使用ID引用用户
- ReportGenerator: 解析话题详情中的 [uid] 并替换为内联头像HTML
- Templates: 更新所有主题的 topic_item.html 以支持富文本详情展示
- _conf_schema.json: 更新默认 Prompt,指导 LLM 使用 [用户ID] 引用用户
- ReportGenerator: 实现胶囊样式渲染 (头像+昵称),提升视觉体验
2026-02-10 20:57:51 +08:00
SXP-Simon
c793858f59
fix(typo)
2026-02-10 20:16:04 +08:00
SXP-Simon
1e7ecd57c3
fix(conf): 修复增量分析描述
2026-02-10 19:54:36 +08:00
SXP-Simon
9aa502f01a
refactor(配置): 重构 _conf_schema.json 为 7 组嵌套结构,更新 ConfigManager 适配嵌套配置路径
2026-02-10 16:09:18 +08:00
SXP-Simon
603fa4be07
feat(增量分析): 添加增量分析配置项
...
- ConfigManager 新增 11 个增量分析相关的 getter 方法
- _conf_schema.json 新增增量分析配置项定义,包含详细中文描述和提示
- 配置项包括:启用开关、分析间隔、每日上限、消息阈值、话题/金句数量、活跃时段、交错间隔
- 增量模式默认关闭,保持向后兼容
2026-02-10 14:49:25 +08:00
SXP-Simon
0b096351d5
fix(docs): 完善注释
2026-02-09 02:14:43 +08:00