CM-001:pending_messages 积压与误删
问题现象
claude-mem 长期没有新增记忆,pending_messages 持续积压,或清理队列后发现输入资料丢失。
根因分析
Worker 的模型调用、认证或处理流程可能失败。待处理队列保存尚未提取的资料,不能因为积压就当作无用缓存删除;数据库表结构与恢复方式还受插件版本影响。
修复步骤
- 先用插件导出或 SQLite 的一致性备份方式保存完整数据,不清空队列。
- 查看当前版本日志,核对模型名称、地址、密钥与调用错误。
- 使用该版本提供的维护入口恢复 Worker,再确认新消息是否能够处理。
- 若数据库包含此表,可只读检查状态计数:
sqlite3 -readonly "$HOME/.claude-mem/claude-mem.db" "SELECT status, COUNT(*) FROM pending_messages GROUP BY status;"需要本机已安装 sqlite3;路径与表结构以实际版本为准。已经误删时保留备份和日志,按该版本的恢复说明处理,无法保证无备份的数据可恢复。
预防措施
先确认记忆产出与 Worker 健康,再考虑维护队列。升级前备份数据,不通过删除 pending 数据解决模型调用失败。