regen: synchronize final membership concurrency contract

feat/estate-admin-members-contract
Vernon Keenan 2026-07-18 23:20:56 +00:00
parent c67edb84f3
commit 5e0f3d888a
4 changed files with 12 additions and 12 deletions

View File

@ -84,10 +84,10 @@ type ClientService interface {
// GetTenantMembershipsContext list actor visible tenant memberships.
GetTenantMembershipsContext(ctx context.Context, params *GetTenantMembershipsParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*GetTenantMembershipsOK, error)
// PostTenantMembership idempotently link one existing active user to one tenant.
// PostTenantMembership create a tenant link or return an exact desired state match.
PostTenantMembership(params *PostTenantMembershipParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*PostTenantMembershipOK, error)
// PostTenantMembershipContext idempotently link one existing active user to one tenant.
// PostTenantMembershipContext create a tenant link or return an exact desired state match.
PostTenantMembershipContext(ctx context.Context, params *PostTenantMembershipParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*PostTenantMembershipOK, error)
// PutTenantMembership idempotently change membership access or lifecycle.
@ -351,7 +351,7 @@ func (a *Client) GetTenantMembershipsContext(ctx context.Context, params *GetTen
panic(msg)
}
// PostTenantMembership idempotentlies link one existing active user to one tenant.
// PostTenantMembership creates a tenant link or return an exact desired state match.
//
// This method does not support injected context.
// However, timeout and opentracing contexts are honored whenever enabled.
@ -368,7 +368,7 @@ func (a *Client) PostTenantMembership(params *PostTenantMembershipParams, authIn
return a.PostTenantMembershipContext(ctx, params, authInfo, opts...)
}
// PostTenantMembershipContext idempotentlies link one existing active user to one tenant.
// PostTenantMembershipContext creates a tenant link or return an exact desired state match.
//
// Do not use the deprecated [PostTenantMembershipParams.Context] with this method: it would be ignored.
func (a *Client) PostTenantMembershipContext(ctx context.Context, params *PostTenantMembershipParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*PostTenantMembershipOK, error) {

View File

@ -73,7 +73,7 @@ func NewPostTenantMembershipOK() *PostTenantMembershipOK {
// PostTenantMembershipOK describes a response with status code 200, with default header values.
//
// Current membership desired state
// Newly created membership or exact existing desired-state match
type PostTenantMembershipOK struct {
Payload *members_models.TenantMembershipResponse
}
@ -303,7 +303,7 @@ func NewPostTenantMembershipConflict() *PostTenantMembershipConflict {
// PostTenantMembershipConflict describes a response with status code 409, with default header values.
//
// Self-change, owner, or concurrent-state conflict
// Self-change, owner, or existing-state conflict; use GET plus optimistic PUT for state changes
type PostTenantMembershipConflict struct {
}

View File

@ -1268,7 +1268,7 @@ paths:
post:
operationId: postTenantMembership
tags: [PortalMemberships]
summary: Idempotently link one existing active user to one tenant
summary: Create a tenant link or return an exact desired-state match
parameters:
- $ref: "#/parameters/requestId"
- in: body
@ -1276,11 +1276,11 @@ paths:
required: true
schema: {$ref: "#/definitions/TenantMembershipCreateRequest"}
responses:
200: {description: Current membership desired state, schema: {$ref: "#/definitions/TenantMembershipResponse"}}
200: {description: Newly created membership or exact existing desired-state match, schema: {$ref: "#/definitions/TenantMembershipResponse"}}
400: {description: Invalid identity selector or desired state}
401: {description: Missing or invalid server or session credential}
404: {description: "Target tenant, user, or authority is unavailable"}
409: {description: "Self-change, owner, or concurrent-state conflict"}
409: {description: "Self-change, owner, or existing-state conflict; use GET plus optimistic PUT for state changes"}
500: {description: Server error}
security: *portalSecurity

View File

@ -1268,7 +1268,7 @@ paths:
post:
operationId: postTenantMembership
tags: [PortalMemberships]
summary: Idempotently link one existing active user to one tenant
summary: Create a tenant link or return an exact desired-state match
parameters:
- $ref: "#/parameters/requestId"
- in: body
@ -1276,11 +1276,11 @@ paths:
required: true
schema: {$ref: "#/definitions/TenantMembershipCreateRequest"}
responses:
200: {description: Current membership desired state, schema: {$ref: "#/definitions/TenantMembershipResponse"}}
200: {description: Newly created membership or exact existing desired-state match, schema: {$ref: "#/definitions/TenantMembershipResponse"}}
400: {description: Invalid identity selector or desired state}
401: {description: Missing or invalid server or session credential}
404: {description: "Target tenant, user, or authority is unavailable"}
409: {description: "Self-change, owner, or concurrent-state conflict"}
409: {description: "Self-change, owner, or existing-state conflict; use GET plus optimistic PUT for state changes"}
500: {description: Server error}
security: *portalSecurity