fix(desktop): suppress generic provider warning in onboarding

Hide the red setup notice when the message is the generic missing-provider guidance, since onboarding already presents provider auth actions. Centralize provider-setup matching across desktop hooks and add coverage for the matcher.
This commit is contained in:
Brooklyn Nicholson
2026-05-11 22:17:46 -04:00
parent 2252160dcf
commit 939ab58b8d
5 changed files with 44 additions and 8 deletions
@@ -0,0 +1,25 @@
import { describe, expect, it } from 'vitest'
import { isProviderSetupErrorMessage } from './provider-setup-errors'
describe('isProviderSetupErrorMessage', () => {
it('matches generic missing-provider copy', () => {
expect(isProviderSetupErrorMessage('No inference provider configured. Run `hermes model` to choose one.')).toBe(true)
expect(isProviderSetupErrorMessage('No inference provider is configured.')).toBe(true)
expect(isProviderSetupErrorMessage('set an API key (OPENROUTER_API_KEY) in ~/.hermes/.env')).toBe(true)
})
it('does not match non-provider runtime failures', () => {
expect(
isProviderSetupErrorMessage(
'Selected runtime is not available. setup.status reports configured credentials.'
)
).toBe(false)
})
it('returns false for empty input', () => {
expect(isProviderSetupErrorMessage('')).toBe(false)
expect(isProviderSetupErrorMessage(null)).toBe(false)
expect(isProviderSetupErrorMessage(undefined)).toBe(false)
})
})