perf: probe models-override staleness in the background refresh task

This commit is contained in:
Dark-Alex-17 committed 2026-09-03 13:48:02 -06:00
1 parent 67cf8e42d9
commit 74b8c17392
1 file changed
+6 -3
+6 -3
View File
@@ -657,15 +657,18 @@ pub fn maybe_spawn_models_refresh(app: &AppConfig) {
if !app.sync_models_auto || app.dry_run { if !app.sync_models_auto || app.dry_run {
return; return;
} }
let ttl_hours = app.sync_models_ttl_hours;
let url = app.sync_models_url.clone();
tokio::spawn(async move {
// The loadable probe deserializes the whole override catalog; keep it
// off the startup path.
let loadable = paths::local_models_override().is_ok(); let loadable = paths::local_models_override().is_ok();
let mtime = fs::metadata(paths::models_override_file()) let mtime = fs::metadata(paths::models_override_file())
.and_then(|metadata| metadata.modified()) .and_then(|metadata| metadata.modified())
.ok(); .ok();
if !models_override_is_stale(loadable, mtime, app.sync_models_ttl_hours) { if !models_override_is_stale(loadable, mtime, ttl_hours) {
return; return;
} }
let url = app.sync_models_url.clone();
tokio::spawn(async move {
if let Err(err) = sync_models_quiet(url.as_deref()).await { if let Err(err) = sync_models_quiet(url.as_deref()).await {
debug!("Background models refresh failed: {err}"); debug!("Background models refresh failed: {err}");
} }