Phase2.5: Skill SetUp Process
All checks were successful
Build and Push / build (push) Successful in 1m39s
All checks were successful
Build and Push / build (push) Successful in 1m39s
This commit is contained in:
@@ -655,3 +655,40 @@ export interface InvoiceDraft {
|
||||
*/
|
||||
warnings: string[];
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Skill activation requests — manual provisioning queue
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
export type SkillActivationStatus =
|
||||
| "pending"
|
||||
| "approved"
|
||||
| "rejected"
|
||||
| "withdrawn";
|
||||
|
||||
/**
|
||||
* A customer-initiated request to enable a flagged-as-manual-setup
|
||||
* skill on a specific tenant. Lifecycle:
|
||||
*
|
||||
* pending → approved (admin clicks Approve; skill added to spec)
|
||||
* pending → rejected (admin clicks Reject with reason)
|
||||
* pending → withdrawn (owner cancels their own request)
|
||||
*
|
||||
* Approved and withdrawn rows are kept for audit but don't block
|
||||
* new pending requests on the same (tenant, skill). The unique
|
||||
* partial index allows at most one row in 'pending' status per
|
||||
* (tenant_name, skill_id).
|
||||
*/
|
||||
export interface SkillActivationRequest {
|
||||
id: string;
|
||||
tenantName: string;
|
||||
zitadelOrgId: string;
|
||||
zitadelUserId: string;
|
||||
skillId: string;
|
||||
status: SkillActivationStatus;
|
||||
requestedAt: string;
|
||||
reviewedAt: string | null;
|
||||
reviewedBy: string | null;
|
||||
rejectionReason: string | null;
|
||||
adminNotes: string | null;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user