Skip to content

Import canonical identity types instead of redefining in tenant.proto / identity_group.proto #110

@haasonsaas

Description

@haasonsaas

Summary

Migrate gate's tenant.proto and identity_group.proto to import canonical types from the identity service's proto package instead of redefining Organization, OrgMember, APIKey, Identity, and Group independently.

Problem

Gate defines its own versions of identity domain types in two proto files:

  • proto/gate/v1/tenant.protoOrganization, OrgMember, APIKey, plus org CRUD RPCs
  • proto/gate/v1/identity_group.protoIdentity, Group, plus CRUD RPCs

These overlap with but differ from chat's auth/v1/auth.proto definitions (WorkspaceInfo, WorkspaceMemberInfo, APIKeyInfo). Both are independent re-implementations of concepts that should be owned by the identity service.

For example, gate's OrgMember has {org_id, user_id, role, created_at} while chat's WorkspaceMemberInfo has {user_id, email, name, picture, role, status, identity_provider, provisioning_source}. Neither is wrong — but they should extend a shared base type rather than being independent.

Scope

  1. Once identity publishes canonical proto types, import them in gate's protos
  2. Gate-specific fields (like proxy-related context) can extend the shared types
  3. Update controlplane.proto to reference the imported types
  4. Regenerate Go code

Depends on

  • evalops/identity proto definitions being published

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions