Files
ElyOffice/tasks/reviews/C12.5-r3.md
T
雷电芽衣 1c225f6812 C12.5: mail accounts, add and remove
ElyMail's window lists accounts and adds Gmail, Microsoft, iCloud
(app-specific password), IMAP and POP3 ones; a check logs in to both
servers and reports each. Accounts live in the store as JSON with a
case-insensitive unique address; secrets go to the keychain. Removal
names the cache it deletes, takes the secret first and puts it back
when local removal fails. Originals are set aside until commit and
restored after a crash. Requests are numbered so late results stay
with their own dialog. The account list is keyboard-navigable.
2026-10-19 20:17:19 -04:00

753 B

FAIL

  1. [P2] apps/ely-mail/src/removing.rs:63 — 凭据删除自身失败时仍会丢失本次会话的密码或刷新令牌。Vault::remove 先移除内存副本,再尝试系统凭据库;这里的 ? 直接返回,绕过后面的凭据恢复。Windows 窗口探针让凭据库拒绝写入与删除,添加账号后确认密码仍在本次会话,再通过真实确认按钮删除:账号保留,但 vault.get 已为 None,未退出应用就失去登录凭据。第 2 轮修复只覆盖了本地数据库删除失败。应让凭据删除失败也保留或恢复先前读出的会话凭据,并补上凭据库不可用时添加账号、删除失败后仍能取回凭据的回归测试。复现见 .work/C12.5-r3/ui-probe.log。