AnkiGenix v1.4 更新:导入更兼容,账户与发布链路更稳
v1.4 集中修复 APKG 导入、积分账本、支付订阅、权限校验、TTS 和生产部署问题,让日常制卡与复习流程更可靠。
AnkiGenix v1.4 更新
v1.4 是一次以稳定性和数据一致性为重点的版本更新。
这次更新集中处理了几条日常使用中很关键的链路:导入第三方 APKG 文件、积分发放与扣除、订阅状态、语音生成,以及生产环境发布。与此同时,我们也收紧了任务、文件和牌组操作的权限检查。
这次更新的重点
1. APKG 导入兼容性更好
不同 Anki 版本和第三方导出工具生成的 APKG 文件,内部字段顺序和元数据格式可能并不完全一致。此前,部分文件明明包含有效卡片,仍可能被判断为空。
v1.4 调整了导入解析方式:
- 支持以数字字符串保存的 Anki 元数据 ID
- 按字段定义顺序读取笔记,减少第三方导出格式差异带来的错配
- 有效内容位于非首字段时仍可恢复卡片
- 牌组元数据缺失时使用可识别的兜底名称
- 文件本身无法导入时,页面会显示更具体的原因
如果你会从其他工具迁移牌组,这一版能减少“文件里有卡片,导入结果却为空”的情况。
2. 积分和支付记录更一致
积分直接关系到每次生成任务能否顺利完成,因此 v1.4 对发放、消费、过期和迁移流程做了一轮集中加固。
主要改进包括:
- 积分消费继续遵循先到期先使用的顺序
- 发放、扣除和过期处理使用更完整的一致性保护
- 注册奖励在重复请求和并发情况下只发放一次
- 匿名卡片迁移与正式账户扣费保持同一套规则
- 订阅到期、续费和积分购买状态处理更准确
这些调整主要解决边缘情况下的重复发放、余额不同步和扣费记录不一致问题。
3. 账户与内容权限检查更严格
这次更新补强了多条需要登录或资源归属校验的路径,包括生成任务、上传文件、AI 对话、牌组模板和批量加卡操作。
系统现在会更严格地确认当前用户是否有权读取或操作对应内容。被封禁账户的受保护操作也会被统一拒绝,支付回调和定时任务的请求校验同步加强。
这些变化不会增加正常使用步骤,但能更好地隔离不同账户的数据。
4. TTS 批量语音生成更稳定
我们修复了批量语音合成中的连接释放和整体超时问题,并恢复了牌组页的 TTS 入口。
当 Google 或 Azure 语音服务都无法完成请求时,系统会及时返回明确错误,避免任务长时间占用资源。对于包含大量卡片的牌组,这能降低批量生成过程中内存持续增长和任务挂起的概率。
5. 生产发布流程更可靠
生产构建现在统一在 Ubuntu 24.04 WSL 环境中完成,避免不同操作系统的 Node.js 依赖混用。服务器端发布包只解压一次,并直接使用本地构建好的内容索引,减少启动阶段的重复工作和异常日志。
本次版本已经完成数据库迁移、PM2 重启和线上页面健康检查。
v1.4 对你意味着什么
这次更新不会改变你熟悉的制卡步骤,主要改善这些场景:
- 导入来自不同 Anki 版本或第三方工具的 APKG 文件
- 在注册、续费或连续生成任务后查看积分余额
- 为较大的牌组批量生成 TTS 语音
- 在生成失败时获得更准确的原因提示
- 使用线上服务时获得更稳定的任务和页面响应
我们会继续优先处理真实学习流程中会导致任务失败、数据不一致或结果不可恢复的问题。