1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
//! Helpers for validating multi-provider backend configuration.
/// Returns true when an instance override agent name maps to a supported
/// backend family for mixed-provider teams.
pub(crate) fn is_known_instance_override_backend(agent_name: &str) -> bool {
matches!(
agent_name,
"claude"
| "claude-code"
| "codex"
| "codex-cli"
| "kiro"
| "kiro-cli"
| "gemini"
| "gemini-cli"
)
}
#[cfg(test)]
mod tests {
use super::is_known_instance_override_backend;
#[test]
fn accepts_supported_backend_names() {
for name in [
"claude",
"claude-code",
"codex",
"codex-cli",
"kiro",
"kiro-cli",
"gemini",
"gemini-cli",
] {
assert!(
is_known_instance_override_backend(name),
"{name} should be valid"
);
}
}
#[test]
fn rejects_unknown_backend_names() {
for name in ["", "mystery", "gpt4", "openai"] {
assert!(
!is_known_instance_override_backend(name),
"{name} should be rejected"
);
}
}
}