Block a user
🟡 [M13] 未检查 KeyEventKind,Press/Repeat/Release 全当命令处理
🟡 [M11] LogLevel::from_str 不 trim 空白
🟡 [M11] LogLevel::from_str 不 trim 空白
修复方案
根因: LogLevel::from_str (crates/core/src/types.rs) 使用 s.to_uppercase() 直接匹配,未对输入做 trim() 处理。JSON 日志路径中 serde 保留字段原始值(含前后空白),导致 `"…
🟡 [M9] 非字符串类型的 timestamp/level 字段被静默丢弃
已修复,提交 8e9600d。
根因: parse_line 中 fields.remove(key) 在类型检查之前执行,非字符串值(如 {"level":30})被移除后 as_str() 返回 None,导致字段既不在提取结果中也不在 fields 中 → 静默数据…
🟡 [M9] 非字符串类型的 timestamp/level 字段被静默丢弃
🟡 [M7] 并发缓存保存共享同一临时文件路径
修复方案
根因: IndexCache::save_with_hash() 和 save() 使用固定的 .index.tmp 临时路径,后台索引线程和 TUI 主线程并发调用时 File::create 截断对方数据。
修复: 用 `tempfile::Builde…
🟡 [M6] 后台线程在有界通道上阻塞 send
已修复,提交 0d88e93。
根因: spawn_indexer 和 spawn_visual_height_rebuild 的后台线程使用阻塞 tx.send() 在有界通道上,consumer 停止 drain 时线程永久挂起,取消检查不可达。
修复方案: -…
[Critical] WAL write failure 语义过于简化:write() 失败后 bytes 可能已落盘