Ariver
2026-06-24 4a9a4cec1739007936d434a6a51180158e25078b
privatevoice.src/internal/model/resolver.go
@@ -19,6 +19,20 @@
   return ResolveModelInRoot(modelID, paths.ModelsRoot())
}
func HasAnyUsableModel() bool {
   return HasAnyUsableModelInRoot(paths.ModelsRoot())
}
func HasAnyUsableModelInRoot(modelsRoot string) bool {
   for _, profile := range ListModelProfiles() {
      resolved, err := ResolveModelInRoot(profile.ID, modelsRoot)
      if err == nil && resolved.IsUsable() {
         return true
      }
   }
   return false
}
func ResolveModelInRoot(modelID, modelsRoot string) (ResolvedModel, error) {
   profile, err := GetModelProfile(modelID)
   if err != nil {