From 83e7b3bdd4558224859628b84f1ab0b0501079c8 Mon Sep 17 00:00:00 2001 From: Sacha Al Himdani Date: Wed, 8 Jul 2026 22:02:31 +0200 Subject: [PATCH] Fix lint issues in connect v1 resolvers Drop the redundant embedded Resolver selector flagged by staticcheck (QF1008) in the membership and organization permission resolvers, and add the whitespace wsl_v5 expects around the attribute range loop and the final return in permission. Signed-off-by: Sacha Al Himdani --- pkg/server/api/connect/v1/membership_resolvers.go | 2 +- pkg/server/api/connect/v1/organization_resolvers.go | 2 +- pkg/server/api/connect/v1/resolver.go | 2 ++ 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/pkg/server/api/connect/v1/membership_resolvers.go b/pkg/server/api/connect/v1/membership_resolvers.go index 6ffca6bd1..73fb57634 100644 --- a/pkg/server/api/connect/v1/membership_resolvers.go +++ b/pkg/server/api/connect/v1/membership_resolvers.go @@ -45,7 +45,7 @@ func (r *membershipResolver) LastSession(ctx context.Context, obj *types.Members // Permission is the resolver for the permission field. func (r *membershipResolver) Permission(ctx context.Context, obj *types.Membership, action string, attributes map[string]any) (bool, error) { - return r.Resolver.permission(ctx, obj, action, attributes) + return r.permission(ctx, obj, action, attributes) } // UpdateMembership is the resolver for the updateMembership field. diff --git a/pkg/server/api/connect/v1/organization_resolvers.go b/pkg/server/api/connect/v1/organization_resolvers.go index c2fd695dd..b638d2556 100644 --- a/pkg/server/api/connect/v1/organization_resolvers.go +++ b/pkg/server/api/connect/v1/organization_resolvers.go @@ -359,7 +359,7 @@ func (r *organizationResolver) Viewer(ctx context.Context, obj *types.Organizati // Permission is the resolver for the permission field. func (r *organizationResolver) Permission(ctx context.Context, obj *types.Organization, action string, attributes map[string]any) (bool, error) { - return r.Resolver.permission(ctx, obj, action, attributes) + return r.permission(ctx, obj, action, attributes) } // Organization returns schema.OrganizationResolver implementation. diff --git a/pkg/server/api/connect/v1/resolver.go b/pkg/server/api/connect/v1/resolver.go index 1e64ab56a..3aa07aa0a 100644 --- a/pkg/server/api/connect/v1/resolver.go +++ b/pkg/server/api/connect/v1/resolver.go @@ -134,6 +134,7 @@ func (r *Resolver) Permission(ctx context.Context, obj types.Node, action string func (r *Resolver) permission(ctx context.Context, obj types.Node, action string, attributes map[string]any) (bool, error) { opts := []authz.AuthorizeFuncOption{authz.WithDryRun()} + for key, value := range attributes { if s, ok := value.(string); ok { opts = append(opts, authz.WithAttr(key, s)) @@ -141,6 +142,7 @@ func (r *Resolver) permission(ctx context.Context, obj types.Node, action string } _, err := r.authorize(ctx, obj.GetID(), action, opts...) + return err == nil, nil }