Files
ElyOffice/tasks/reviews/C12.3-r3.md
T
ZacharyZhang-NYandClaude Opus 5.5 7c5bf48589 C12.3: ElyMail local store
SQLite index, content-addressed originals, rebuildable FTS5 search,
schema versions with a backup before each upgrade and read-only on
failure, and size reporting. Three review rounds; the round 3 fixes
are checked by tests, not reviewed again.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-19 18:14:09 -04:00

1020 B
Raw Blame History

FAIL

  • crates/ely-mail-engine/src/store/messages.rs:207 — 删除消息先提交数据库删除,再删除最后一份原文;原文删除失败后失去可重试的引用,留下永久残留。Windows 上存入一封 35 字节邮件,用 OpenOptionsExt::share_mode(1) 打开原文并保持句柄,再调用 remove:返回文件占用错误,但 get 已报无行;关闭句柄后重试 remove 只报 no message 1,sizes().originals 仍为 35。现有测试只覆盖删除成功。修复方向:协调消息删除与内容清理,失败时保留或恢复可重试的引用,或持久记录待清理内容;增加文件占用、解除后重试且无残留的回归测试。证据:.work/C12.3-r3/remove-probe.log、.work/C12.3-r3/probe-source.log。

  • crates/ely-mail-engine/src/store/html.rs:14、crates/ely-mail-engine/src/store/html.rs:108 — 新增的两条注释分别为 12 和 11 个空白分隔词,超过 agents.md 的十词上限。修复方向:分别缩至十词以内。