Repository navigation
ToastFish v3.2.4
修复:学满 30 词后 AI 短文仍然不生成
问题:累计学习超过 30 个新词后,学后 AI 短文 / 完形填空依然不弹出,而且没有任何报错提示,看起来像是功能「静悄悄失效」。
根因:AI 短文门控取词时传入的新词列表恒为空。
新词学习是一个「边学边删」的循环 —— while (NewCardLst.Count != 0) 体内每学一个词就 RemoveAt(0),循环退出条件本身就是「列表已经被清空」。而门控代码位于这段循环之后,拿到的必然是空列表,于是:
累积计数永远是 0 → 永远达不到 30 的阈值 → 预生成任务从不启动 → 短文永不生成
又因为门控标志保持「默认跳过」,整个环节静默返回,用户看不到任何异常。
修复:在循环之前保存一份新词快照,门控改用它。
实测验证
| 环节 | 结果 |
|---|---|
| 累积生效 | pending 45 → 50(此前恒为 []) |
| 门控放行 | 50 ≥ 30 ✅ |
| 生成成功 | ai_diag.log 新增 GEN OK en=5332chars q=5 |
| 累积清零 | pending → [](清空逻辑正确执行) |
| 弹窗展示 | 右下角弹出「学后 AI 短文 · 包含你刚学的 8 个目标词」 |
升级说明
- 覆盖安装不会动你的学习数据 ——
inami.db标记了onlyifdoesntexist,安装器不会覆盖已存在的数据库 - 卸载也不会删除数据库(
uninsneveruninstall) - 如果你希望迁移旧数据,可在安装时勾选「附加任务」页的迁移选项并选择旧
inami.db
完整对比:v3.2.3...v3.2.4