pub(crate) async fn db_update_analysis(
path: String,
bpm: Option<f64>,
key: Option<String>,
lufs: Option<f64>,
) -> Result<(), String>Expand description
Persist BPM, key, and LUFS together (same transaction and bpm_exhausted rules as batch analysis).