client_state
Previously, this function was private and only `ensure_has_permission` was public. `ensure_has_permission` throws in the absence of a permission, but it can also be useful to query a permission without it being an error.