Offer the flare, zenith and prism cloud tiers

Onde Cloud serves onde-flare, onde-zenith and onde-prism, but the client's tier list did not include them, so they never showed in /models or the editor's model picker. A new test checks that every listed tier maps to an onde- id. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Seto Elkahfi committed Oct 2, 2026 at 00:22 UTC 4758afc3467067ce9496fc3b72d2d83a3daf3f9b
2 files changed +20 -1
CHANGELOG.md
+8
@@ -1,5 +1,13 @@
1 # Changelog
2
3 +## Unreleased
4 +
5 +### Added
6 +
7 +- **Three more siGit Code Cloud tiers: `flare`, `zenith` and `prism`.** They
8 + show up in `/models` and in the editor's model picker alongside the existing
9 + tiers. Selecting one needs a signed-in account, as before.
10 +
11 ## 1.5.12
12
13 ### Fixed
src/provider.rs
+12 -1
@@ -40,7 +40,7 @@ const DEFAULT_CLOUD_URL: &str = "https://sigit.si/api/v1";
40 /// to be updated together when a tier is added.
41 pub const CLOUD_TIERS: &[&str] = &[
42 "fast", "balanced", "large", "mini", "air", "pro", "oke", "flux", "apex", "aura", "orbit",
43 - "nova",
43 + "nova", "flare", "zenith", "prism",
44 ];
45
46 pub const DEFAULT_CLOUD_TIER: &str = "nova";
@@ -85,6 +85,9 @@ fn tier_to_model(tier: &str) -> String {
85 "aura" => "onde-aura",
86 "orbit" => "onde-orbit",
87 "nova" => "onde-nova",
88 + "flare" => "onde-flare",
89 + "zenith" => "onde-zenith",
90 + "prism" => "onde-prism",
91 other => other,
92 }
93 .to_string()
@@ -267,4 +270,12 @@ mod tests {
270 assert_eq!(DEFAULT_CLOUD_TIER, "nova");
271 assert_eq!(tier_to_model(DEFAULT_CLOUD_TIER), "onde-nova");
272 }
273 +
274 + #[test]
275 + fn maps_every_cloud_tier_to_an_onde_model_id() {
276 + for tier in CLOUD_TIERS {
277 + let model = tier_to_model(tier);
278 + assert!(model.starts_with("onde-"), "{tier} maps to {model}");
279 + }
280 + }
281 }