fix(cloud): show owner model balance and enforce single owner (#2384)

* fix(cloud): show owner model balance and enforce single owner

* fix(migrations): create owner index idempotently

---------

Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com>
This commit is contained in:
Hyu
2026-08-03 01:53:40 +08:00
committed by GitHub
parent 2cc6d10f33
commit 9b57183a99
19 changed files with 274 additions and 71 deletions
@@ -203,20 +203,21 @@ async def test_last_owner_cannot_be_demoted(collaboration_context):
second_membership,
)
promoted = await service.update_member_role(
workspace.uuid,
second.uuid,
'owner',
owner_membership,
)
assert promoted.role == 'owner'
demoted = await service.update_member_role(
workspace.uuid,
owner_membership.account_uuid,
'admin',
owner_membership,
)
assert demoted.role == 'admin'
with pytest.raises(MembershipPermissionError, match='cannot be transferred'):
await service.update_member_role(
workspace.uuid,
second.uuid,
'owner',
owner_membership,
)
with pytest.raises(LastOwnerError):
await service.update_member_role(
workspace.uuid,
owner_membership.account_uuid,
'admin',
owner_membership,
)
async def test_workspace_selector_requires_membership(collaboration_context):