Interpret the registration response's tenancy signal. `mode: "single"` (server v1.4.0+) marks a single-tenant deployment and carries the org `role` the identity received; anything else — `"multi"` or a missing field (older servers) — keeps multi-tenant URL semantics. Returns `(single_tenant, role)`.
(data: &serde_json::Value)
| 448 | /// or a missing field (older servers) — keeps multi-tenant URL semantics. |
| 449 | /// Returns `(single_tenant, role)`. |
| 450 | fn parse_tenancy_mode(data: &serde_json::Value) -> (bool, Option<&str>) { |
| 451 | let single = data.get("mode").and_then(|v| v.as_str()) == Some("single"); |
| 452 | let role = data.get("role").and_then(|v| v.as_str()); |
| 453 | (single, role) |
| 454 | } |
| 455 | |
| 456 | #[cfg(test)] |
| 457 | mod tests { |