Ignore invalid companion auth shapes (#1405)

This commit is contained in:
red person
2026-06-03 08:07:07 +03:00
committed by GitHub
parent 5fba1735c2
commit 43dc346255
2 changed files with 17 additions and 2 deletions
+7 -2
View File
@@ -64,11 +64,16 @@ def find_admin_user() -> str | None:
auth_path = os.path.join("data", "auth.json")
try:
with open(auth_path, "r", encoding="utf-8") as f:
users = (json.load(f) or {}).get("users", {})
data = json.load(f)
except (OSError, json.JSONDecodeError):
return None
if not isinstance(data, dict):
return None
users = data.get("users") or {}
if not isinstance(users, dict):
return None
for uname, udata in users.items():
if udata.get("is_admin") is True:
if isinstance(udata, dict) and udata.get("is_admin") is True:
return uname
return next(iter(users), None)