Files
hermes-web-ui/tests/client/coding-agent-providers.test.ts
王.W 3df901a085 fix(workflow): allow scoped Coding Agent protocol overrides (#2154)
* fix(workflow): allow scoped coding agent protocols

Keep exact profile protocol matching for Hermes nodes while allowing scoped Codex and Claude Code nodes to select launcher-supported wire protocols for a configured provider and model.\n\nCloses #2153

* fix(workflow): hide scoped auth providers

---------

Co-authored-by: Lux <wangw9475@agent.qq.com>
Co-authored-by: ekko <fqsy1416@gmail.com>
2026-07-20 19:37:41 +08:00

28 lines
1.1 KiB
TypeScript

import { describe, expect, it } from 'vitest'
import {
canScopedCodingAgentUseProvider,
isAuthModelProvider,
usesServerManagedProviderAuth,
} from '../../packages/client/src/utils/codingAgentProviders'
describe('coding agent provider visibility', () => {
it.each(['nous', 'openai-codex', 'copilot', 'xai-oauth', 'qwen-oauth', 'claude-oauth'])(
'exposes %s to scoped Ekko Agent sessions',
(provider) => {
expect(isAuthModelProvider(provider)).toBe(true)
expect(canScopedCodingAgentUseProvider('ekko-agent', provider)).toBe(true)
expect(usesServerManagedProviderAuth('ekko-agent', provider)).toBe(true)
},
)
it.each(['claude-code', 'codex'] as const)(
'keeps auth providers hidden from scoped %s sessions',
(agentId) => {
expect(canScopedCodingAgentUseProvider(agentId, 'openai-codex')).toBe(false)
expect(canScopedCodingAgentUseProvider(agentId, 'qwen-oauth')).toBe(false)
expect(usesServerManagedProviderAuth(agentId, 'openai-codex')).toBe(false)
expect(canScopedCodingAgentUseProvider(agentId, 'deepseek')).toBe(true)
},
)
})