2977094657
ad29c8b251
chore(release): bump version to 1.7.20
2026-04-25 23:37:26 +08:00
2977094657
2f8af245ea
feat(export): 支持账号归档 ZIP 导出
...
- 新增账号归档导出后端接口,支持创建、查询、取消导出任务和下载 ZIP 文件
- 支持按账号打包数据库、元信息文件和资源文件,并使用 ZIP 存储模式提升大文件归档速度
- 前端接入账号归档导出 API,支持导出目录选择、导出内容勾选、进度轮询和取消导出
- 简化全局导出弹窗,将入口聚焦为数据库与资源文件归档导出
- 开启侧边栏导出入口,并补充 README 中的导出说明
2026-04-25 23:37:26 +08:00
2977094657
751c252e88
improvement(import): 支持 wxdump 目录导入并增加导入保护
...
- 兼容 wxdump 的 output 目录、database/ 和 media/ 结构
- 缺少 account.json 时自动推断账号信息并补充导入预览
- 导入前展示目标账号状态,并拦截源目录与目标目录重叠的情况
- 支持取消导入、已有账号自动备份,以及失败/取消后的回滚恢复
- 补充资源查找兼容逻辑,适配 wxdump 导入后的媒体文件布局
2026-04-24 18:04:21 +08:00
2977094657
8c0eeca4ed
chore(release): bump version to 1.7.12
2026-04-23 21:46:20 +08:00
2977094657
0987167c4a
fix(key): 支持手动指定微信安装目录并校验 db key 来源
...
- /api/get_keys 支持传入 wechat_install_path,兼容安装目录与 Weixin.exe / WeChat.exe
- 解密完成后保存 db key 的来源路径与别名,避免历史密钥被错误账号复用
- 解密页按 account + db_storage_path 回填已保存密钥,并补充相关测试覆盖
2026-04-23 21:32:02 +08:00
2977094657
ec2a84af18
improvement(sns): 优化朋友圈导出
2026-04-23 14:51:58 +08:00
2977094657
6bed048948
improvement(sns-export): 支持朋友圈多格式离线导出
...
- 新增 html/json/txt 导出格式参数
- 为导出结果补充 index 与 manifest 信息
- 补充总动态数和当前联系人进度字段
2026-04-20 15:24:26 +08:00
2977094657
e0e50143c9
improvement(desktop-output): 补充 output 目录迁移进度反馈并完善切换体验
...
- 将 output 目录迁移改为 worker 异步执行,并补充扫描、复制、校验、回滚阶段进度
- 设置页增加迁移进度展示,支持恢复进行中的状态并展示当前文件/传输体积
- 迁移完成后自动清理旧备份目录,并同步源码/桌面端版本号到 v1.7.10
2026-04-16 21:19:04 +08:00
2977094657
7870cd54fc
improvement(sns): 精简朋友圈媒体链路并移除手动挑图入口
...
- 移除 Server-Timing/X-SNS 阶段透出与前端媒体来源标记
- 移除本地候选图与手动匹配接口及预览交互
- /api/sns/media 默认仅保留远程下载解密路径,未命中直接返回 404
- 将导出所需的本地缓存匹配逻辑下沉到 sns_export_service
2026-04-16 01:19:09 +08:00
2977094657
94a8b124c3
improvement(sns-media): 内置 WeFlow WASM 资源并切换朋友圈图片解密实现
...
- 内置 wasm_video_decode 资源并纳入打包
- Node helper 优先使用包内 weflow_wasm 目录
- 朋友圈图片远程解密改为走 WeFlow WxIsaac64 全量 XOR
- 补充对应测试并更新纯 Python fallback 说明
2026-04-16 01:18:27 +08:00
2977094657
3b34e786f1
improvement(chat-export): 优化导出取消响应并补充保存进度反馈
...
- 导出弹层展示实际生成位置、浏览器目录保存进度和取消中状态\n- 导出服务补充取消检查、链路追踪与实时同步暂停恢复\n- 预建媒体索引并减少 emoji 空查找开销,补充相关测试
2026-04-15 01:27:55 +08:00
2977094657
23932bf89c
feat(media): 新增表情批量下载步骤并支持并发配置
...
- 解密页新增表情下载步骤,支持开始/停止、进度展示和结果统计\n- 图片解密与表情下载接口支持并发配置,补充 SSE 进度与结果信息\n- 增加表情目录聚合、缓存校验与媒体下载相关测试
2026-04-15 01:26:44 +08:00
2977094657
1fc937ed7c
perf(chat-api): 补充聊天接口追踪并异步化图片读取
...
- 新增后端 perf trace 工具,覆盖会话、消息、头像和图片接口
- 将图片路径探测、候选收集、解密读取与缓存写入移入线程,减少阻塞
- 补充缓存命中与候选选择追踪,并为图片接口增加 prefer_live
2026-04-14 00:21:02 +08:00
2977094657
839949a544
improvement(log): 补充图片密钥与媒体解密链路调试日志
...
- 为解密页关键阶段补充调试日志
- 为图片密钥获取流程补充请求、命中和回退日志
- 为媒体密钥保存与批量解密补充有效密钥日志
- 对 AES 信息做摘要输出,便于排查且避免完整泄露
2026-04-13 18:11:25 +08:00
2977094657
f5c3fed181
fix(key): 支持通过 db_storage_path 精确获取当前账号图片密钥
...
- 前端获取图片密钥时补充透传 db_storage_path / wxid_dir
- 后端支持通过 db_storage_path 反推出目标 wxid_dir
- 本地图片密钥匹配改为账号精确匹配,避免子串误命中
- 切换账号时重置并重新预填密钥,避免跨账号串用旧密钥
- 增加单测,覆盖精确匹配和未完成数据库解密时的远程获取场景
2026-04-13 18:10:53 +08:00
H3CoF6
0711750491
fix(key): 修复单/多账号图片密钥的匹配问题
2026-04-13 03:24:19 +08:00
2977094657
15fa6072e3
feat: 添加媒体解密进度取消功能,优化检测逻辑
2026-04-12 19:44:17 +08:00
2977094657
68b11261cc
Merge remote-tracking branch 'origin/main'
2026-04-12 15:56:12 +08:00
2977094657
64e8cf6718
fix(chat): 补充视频号消息 objectId 和 objectNonceId 字段透传
...
补充 Finder/视频号类型 app message 的 objectId、objectNonceId 解析
在聊天消息接口、搜索结果和导出链路中透传上述字段
前端消息归一化增加 objectId、objectNonceId 字段
新增对应测试,覆盖 type=51 场景
2026-04-12 15:51:00 +08:00
2977094657
52ef2b8ded
fix(realtime): 修复前后端分离运行时实时模式校验失败
...
前后端分离运行时补齐 WCDB sidecar 自动启动链路
在缺少 sidecar 环境变量时自动探测并拉起本地 Electron sidecar
初始化失败时回退到进程内 WCDB 路径,避免直接中断实时模式
服务关闭时回收自动启动的 sidecar 进程,减少残留进程
2026-04-12 15:26:40 +08:00
H3CoF6
f598289939
feat: 更稳定的密钥获取
...
- 不再维护偏移量/特征码
- 不再hook图片密钥
2026-04-12 03:49:48 +08:00
2977094657
4f9acd3f69
fix(decrypt): 加强解密结果校验并过滤内部数据库
...
- 新增可用 SQLite 校验,解密失败时返回更明确提示并清理无效输出
- 统一过滤 key_info、FTS 索引库和内部缓存库,修正数据库扫描与账号统计
- 补充解密流和数据库过滤相关测试
2026-04-11 16:57:01 +08:00
2977094657
604e01eb50
fix(realtime): 内置 WCDB sidecar 并切换项目内 DLL
...
- 桌面端启动时自动拉起 WCDB sidecar,并向后端注入连接参数
- 打包附带 sidecar 脚本与 koffi 运行时
- 改为通过项目内置 WeFlow DLL 处理 realtime 调用,规避宿主校验失败和连接超时
2026-04-11 16:56:42 +08:00
H3CoF6
4b47c1e69c
feat: parse last login account info
2026-04-09 01:30:35 +08:00
H3CoF6
73f69f6f14
feat: parse wxgf(wxam) for import data
2026-04-09 01:13:48 +08:00
H3CoF6
0ccd2016e7
feat: 文件选择器 + 信息解析
2026-04-08 16:43:02 +08:00
H3CoF6
ad6031651b
feat: 优化导入流程,将导入按钮移至首页并支持目录选择和账号预览
2026-04-08 07:00:53 +08:00
H3CoF6
d64a2e46f7
feat: 新增导入已解密目录功能,支持不走密钥流程导入已解密的数据库和资源
2026-04-08 06:39:06 +08:00
2977094657
655a1fd7f5
feat(chat-media): 修复媒体缓存
2026-04-08 00:21:20 +08:00
2977094657 and Codex
1064c5a248
Add detailed chat search click tracing
...
Co-authored-by: Codex <noreply@openai.com >
2026-04-04 21:45:16 +08:00
2977094657 and Codex
624853f483
Add logging and sync guards around chat search decrypt flow
...
Co-authored-by: Codex <noreply@openai.com >
2026-04-04 20:02:43 +08:00
2977094657
4ba2c75332
feat: improve text chat record loading diagnostics
2026-04-03 18:39:55 +08:00
2977094657
7ae152af33
fix(chat-media): 修复聊天图片缓存降级并刷新当前会话媒体
...
- 优先使用更高质量的微信图片资源并回写本地缓存
- 图片接口返回 no-store,避免浏览器继续命中旧缓存
- 页面恢复前台时刷新当前会话媒体资源,并补充相关测试
2026-03-30 22:02:09 +08:00
2977094657
697e788318
feat(desktop): 支持自定义 output 目录并迁移现有数据
...
- 支持在桌面端查看、选择和恢复默认 output 目录
- 安装器记录待应用目录,并在应用启动时自动迁移数据
- 后端支持 output 目录覆盖,补充桌面端与后端相关测试
2026-03-30 22:01:51 +08:00
2977094657
673d1f916a
fix(realtime): 修复服务号实时同步写入解密库并优化桌面端运行时兼容性
...
服务号实时同步改为直接读取 live biz_message 库,避免 gh_* 会话走空的 wcdb_get_messages。
将同步结果写回 output/databases 解密库,并补充异常降级路径。
修复桌面端日志处理与 wcdb_api.dll 的运行时定位问题。
2026-03-28 13:18:22 +08:00
H3CoF6
9a7e0f5854
feat(biz): add biz type
2026-03-28 05:04:12 +08:00
H3CoF6
05cba6c454
fix(biz): fix avatar and cover bug
2026-03-28 04:48:38 +08:00
H3CoF6
46fba98202
fix(biz): fix database_error
2026-03-28 04:33:07 +08:00
H3CoF6
c29b425791
feat(biz): implement parse biz data
2026-03-28 04:16:24 +08:00
2977094657
a94ab83668
feat: support finder cards in chat view
2026-03-26 12:57:50 +08:00
2977094657
c04d515f92
Fix realtime sync writing Msg tables
2026-03-24 17:56:17 +08:00
2977094657
f5f3e85e31
Revert "fix(decrypt): 修复数据库原始密钥解密与设备绑定提示"
...
This reverts commit bcd8f67c25 .
2026-03-24 12:14:18 +08:00
2977094657
dc7ac0a5e4
Revert "fix(decrypt): 修复 SQLCipher 密钥兼容性回归"
...
This reverts commit 22399f4110 .
2026-03-24 12:14:13 +08:00
2977094657
22399f4110
fix(decrypt): 修复 SQLCipher 密钥兼容性回归
...
- 解密时同时兼容 raw enc_key 与 SQLCipher 派生密钥两种输入形态
- 通过首页 HMAC 自动识别可用密钥模式,避免真实账号密钥被误判为不匹配
- 后续页面解密统一使用识别出的有效密钥,恢复数据库解密流程
- 补充 SQLCipher passphrase 场景回归测试,覆盖此次回归问题
2026-03-23 15:36:39 +08:00
2977094657
11d31ac022
fix(chat): 修复 realtime 同步下 Name2Id 映射缺失
...
- 将 Name2Id 从随新消息顺带补写调整为按 live WCDB 整表同步\n- 修复输出库中 real_sender_id 无法稳定反查 sender_username 的问题\n- 消除必须删除当前项目数据并重新加载后 Name2Id 才能补全的问题\n- 增加 Name2Id 自愈同步回归测试,覆盖无新消息时的修复场景
2026-03-23 14:38:32 +08:00
2977094657
bcd8f67c25
fix(decrypt): 修复数据库原始密钥解密与设备绑定提示
2026-03-22 19:52:04 +08:00
2977094657
a01dba4a93
fix(chat): 修复群聊置顶系统消息显示名称与导出文案
...
- 解析 ChatRoomTopMsg 文本/XML 系统消息,识别置顶与取消置顶操作
- 优先使用备注名/联系人名替换 wxid,避免实时消息、历史消息、搜索结果显示原始账号
- 导出 JSON/TXT/HTML 时复用同一套系统消息名称解析逻辑
- 补充系统消息解析与实时消息展示测试,覆盖多种消息载荷格式
2026-03-22 15:34:05 +08:00
2977094657
fb6601251b
fix(decrypt): 修复错误账号目录导致的坏库读取问题
...
- 修正 db_storage 路径扫描逻辑,避免将多账号上级目录误识别为单个账号
- 统一普通解密和流式解密的账号识别与来源写入逻辑
- 为聊天和媒体账号列表增加 SQLite 文件头校验
- 跳过损坏的解密目录,避免聊天页和头像接口继续读取坏库
2026-03-17 12:13:50 +08:00
2977094657
4afdbe20b1
fix(wcdb): 修复dll选择路径
2026-03-17 11:40:25 +08:00
Alfred Tang
a79ff81be0
fix: resolve chat messages not loading due to Nuxt auto-import bug and WCDB timeout
...
- Move frontend/utils/ to frontend/lib/ to avoid Nuxt unimport scanner
incorrectly extracting function parameter names (value, fallback) as
module-level exports, which injected phantom imports that broke all
client-side JavaScript execution
- Update all import paths across 13 files from ~/utils/ to ~/lib/
- Add timeout (5s) and negative cache (60s TTL) to WCDB realtime
ensure_connected() to prevent open_account() from hanging indefinitely
when the WeChat database is locked
- Reorder selectContact() to fire loadMessages() before navigateTo() so
the message fetch starts before route navigation triggers Suspense
- Add watch: false to SSR useAsyncData calls to prevent unnecessary
re-fetching on client-side route changes
2026-03-14 17:17:10 +08:00