Commit Graph
14 Commits
Author SHA1 Message Date
youpaishidifu cd2e1f5e36 fix: .gitignore 补全无下划线前缀的调试/测试脚本规则 - 曾有 debug_kb.py/test_kb.py 因命名绕过 _debug_*/_test_* 规则待被误入库 2026-08-05 14:30:50 +08:00
youpaishidifu a181c18c79 移除不应入库的文件:数据库、调试脚本、测试脚本;更新.gitignore 2026-08-05 13:36:57 +08:00
youpaishidifu 4d7017be6a 修复知识库搜索:表格内容不再被切分,表格section优先返回
- knowledge_base.py: _split_body_by_list_items检测表格区域,不切分表格行
- knowledge_base.py: 添加独立表格section,确保表格内容可被搜索匹配
- knowledge_base.py: 表格兜底策略:最佳文档含操作/支持表格时强制加入并置顶
- knowledge_base.py: reranking后无条件优先返回含操作/支持的表格section
- .gitignore: 添加msg_history.db和诊断脚本到忽略列表
2026-08-05 13:22:27 +08:00
youpaishidifu c6c8cc0571 @
fix: 微信颜色检测放宽+KB精确匹配+自动回复重试

1. monitor.py - 微信白色气泡检测阈值放宽(>=245->>=240, >=3->>=2)
   适配新版微信UI颜色变化,减少漏检
2. knowledge_base.py - 精确短语匹配(5x加分)+子串匹配(2.5x/1.5x)
   防止查询被不相关文档抢走高分
3. gui.py - 自动回复发送失败重试(3次/5秒间隔)
   连续失败退避本轮,避免反复抢焦点
4. .gitignore - 补充build目录下的证书/构建产物
@
2026-08-03 16:42:21 +08:00
youpaishidifu 686aae7e53 build.bat参数解析兼容PowerShell+gitignore修正保留构建脚本 2026-08-03 11:03:57 +08:00
youpaishidifu 4ae189e82f 修复EasyOCR CUDA OOM冻结+时间戳day=0崩溃+OCR图片分目录img/raw+processed
- 冻结根因: CUDA OOM后worker不退出, 损坏context持续占显存, 父进程不杀子进程
  反复发图→线程堆积+显存耗尽→桌面冻结
- worker: readtext CUDA/kernel错误→立即退出释放显存(faulerhandler已有兜底)
- 父进程: 收到CUDA错误→立即杀子进程+30s冷却; 连续2次CUDA错误→EASYOCR_FORCE_CPU=1
  强制CPU模式启动(显存不足降级防冻结)
- 时间戳day=0崩溃: _is_timestamp_old跨午夜用replace(day-1), 每月1号day=1→day=0
  抛ValueError day is out of range for month→微信OCR整轮失败; 改用timedelta(days=±1)
- OCR调试图片回源码目录: img/raw(原图PNG) + img/processed(处理后JPG) 分目录存储
- 崩溃日志回源码根 easyocr_crash.log (不写%LOCALAPPDATA%)
- _clean_old_ocr_debug 默认 keep=20 (回退上一轮激进keep=6)
- .gitignore: 忽略 img/ 与 worker_stderr/stdout.txt
2026-08-01 22:23:55 +08:00
youpaishidifu e723ce582e OCR checkbox残片过滤 + EasyOCR GPU自动检测 2026-07-27 19:02:58 +08:00
youpaishidifu 5ecfa09017 窗口查找改纯PID+OCR垃圾过滤+md短标题修复 2026-07-27 18:18:36 +08:00
youpaishidifu 0d375ab230 chore: gitignore 屏蔽 nul 文件(Shell 重定向产物) 2026-07-26 23:26:11 +08:00
youpaishidifu 643619453d chore: gitignore 屏蔽 ocr_debug_*.png 并移除跟踪 2026-07-26 20:17:03 +08:00
youpaishidifu 6a96111db6 修复QQ读不到消息+微信前台判定失败(窗口在前台仍报错)\n\n问题1: QQ(TIM)读不到消息\n 根因: _focus_message_area在窗口未前置前SendKeys({Esc})发给错误窗口\n 然后_read_via_clipboard_once只用{Esc}未能聚焦消息显示区\n TIM中{Esc}只退出搜索到会话列表,非消息区域\n 修复: 删_focus_message_area(整个方法窗口未前置时无意义)\n _read_via_clipboard_once中TIM路径改为:\n {Esc}{Esc}退出搜索→{Down}选中对话→{Enter}打开(加载消息区)\n 此时Ctrl+A选中消息内容而非会话列表\n\n问题2: 微信已前置仍报目标窗口不在前台\n 根因: _cached_hwnd存储UIA NativeWindowHandle(可能是子窗口句柄)\n 而GetForegroundWindow()返回顶层窗口句柄→hwnd不匹配\n 修复: _ensure_hwnd存储时加GetAncestor(hwnd,GA_ROOT)确保存顶层句柄\n _ensure_foreground改用root_hwnd判断\n 加SwitchToThisWindow fallback(权限要求比SetForegroundWindow低)\n \n其他: .gitignore加tim_dump.txt 2026-07-25 15:02:26 +08:00
youpaishidifu 2f378f676f fix QQ消息读取: 跳过ListControl(UIA冻结)直接全窗深度遍历+Win32回退
- QQ NT TXGuiFoundation UIA树冻结,ListControl始终返回缓存数据
- QQ路径改为: 先force_scroll_bottom, 然后全窗深度遍历(max_depth=8)
- 添加Win32回退(EnumChildWindows+GetWindowText)绕过UIA
- QQ冻结检测更激进(stale=3刷新, stale=6重建引用)
- 微信改动: 标题栏点击(Win10/11安全)->非侵入式刷新
- .gitignore添加*.log
2026-07-24 23:10:45 +08:00
youpaishidifu db31102a43 fix: 彻底重写消息抓取—深度4递归遍历右侧半区文本+UI树调试转储 2026-07-24 20:50:20 +08:00
youpaishidifu bdfc24a4c7 init: 消息问答助手 — 微信/QQ监控 + 本地知识库搜索 + GUI 2026-07-24 19:36:14 +08:00