ensureScan 检查 lastErrorAt,冷却期内不触发懒扫描,防止 storage 持续异常时 CPU 飙升。手动 POST /api/scan 不受冷却限制,用户可随时手动重试。扫描成功后清除 lastErrorAt 解除冷却。