Skip to content

Commit ec3fd76

Browse files
ImTotemclaude
andcommitted
fix(graphql): use strawberry.ID type for id parameters
GraphQL clients send ID type variables. Resolvers must accept strawberry.ID (maps to GraphQL ID scalar) instead of str. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 52d2650 commit ec3fd76

File tree

2 files changed

+7
-5
lines changed

2 files changed

+7
-5
lines changed

src/bcsd_api/member/resolvers.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import strawberry
12
from strawberry.types import Info
23

34
from bcsd_api.filter.members import MemberFilter
@@ -59,7 +60,7 @@ def resolve_members(
5960
)
6061

6162

62-
def resolve_member(info: Info[GqlContext, None], id: str) -> MemberDetailType:
63+
def resolve_member(info: Info[GqlContext, None], id: strawberry.ID) -> MemberDetailType:
6364
require_user(info.context)
6465
m = service.get_member(info.context.member_repo, id)
6566
return _to_detail(m)

src/bcsd_api/shorten/resolvers.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import strawberry
12
from strawberry.types import Info
23

34
from bcsd_api.filter.links import LinkFilter
@@ -76,7 +77,7 @@ def resolve_links(
7677
)
7778

7879

79-
def resolve_link(info: Info[GqlContext, None], id: str) -> LinkDetailType:
80+
def resolve_link(info: Info[GqlContext, None], id: strawberry.ID) -> LinkDetailType:
8081
require_user(info.context)
8182
d = service.get_detail(info.context.link_repo, id)
8283
return _to_detail(d)
@@ -106,7 +107,7 @@ def resolve_create(info: Info[GqlContext, None], input: CreateLinkInput) -> Link
106107

107108

108109
def resolve_update(
109-
info: Info[GqlContext, None], id: str, input: UpdateLinkInput,
110+
info: Info[GqlContext, None], id: strawberry.ID, input: UpdateLinkInput,
110111
) -> LinkType:
111112
require_user(info.context)
112113
req = UpdateRequest(
@@ -117,13 +118,13 @@ def resolve_update(
117118
return _to_link(result)
118119

119120

120-
def resolve_toggle(info: Info[GqlContext, None], id: str) -> LinkType:
121+
def resolve_toggle(info: Info[GqlContext, None], id: strawberry.ID) -> LinkType:
121122
require_user(info.context)
122123
result = service.toggle(info.context.link_repo, id)
123124
return _to_link(result)
124125

125126

126-
def resolve_delete(info: Info[GqlContext, None], id: str) -> bool:
127+
def resolve_delete(info: Info[GqlContext, None], id: strawberry.ID) -> bool:
127128
require_user(info.context)
128129
service.delete(info.context.link_repo, id)
129130
return True

0 commit comments

Comments
 (0)