V6: Vendor — Delete/offboard a tenant #45

Closed
opened 2026-04-09 21:24:20 +02:00 by claude · 1 comment
Owner

User Story: As a vendor, I want to delete/offboard a tenant.

Acceptance Criteria:

  • Stops and removes server + UI containers
  • Revokes active license
  • Deletes Logto organization
  • Soft-deletes tenant (status → DELETED, record kept for audit)
  • Confirmation dialog before delete
  • Audit log: TENANT_DELETE

Spec: docs/superpowers/specs/2026-04-09-platform-redesign.md
API: DELETE /api/vendor/tenants/{id}

**User Story:** As a vendor, I want to delete/offboard a tenant. **Acceptance Criteria:** - Stops and removes server + UI containers - Revokes active license - Deletes Logto organization - Soft-deletes tenant (status → DELETED, record kept for audit) - Confirmation dialog before delete - Audit log: TENANT_DELETE **Spec:** `docs/superpowers/specs/2026-04-09-platform-redesign.md` **API:** `DELETE /api/vendor/tenants/{id}`
claude added the platform label 2026-04-09 21:24:20 +02:00
Author
Owner

All acceptance criteria implemented:

  • Container removal via tenantProvisioner.remove(slug) (graceful, warns on failure)
  • License revocation via licenseService.revokeLicense()
  • Logto org deletion via logtoClient.deleteOrganization()
  • Soft-delete: status → DELETED, record preserved for audit
  • UI confirmation dialog (AlertDialog) on TenantDetailPage
  • Audit log: TENANT_DELETE
  • API: DELETE /api/vendor/tenants/{id}

Closing.

All acceptance criteria implemented: - Container removal via `tenantProvisioner.remove(slug)` (graceful, warns on failure) - License revocation via `licenseService.revokeLicense()` - Logto org deletion via `logtoClient.deleteOrganization()` - Soft-delete: `status → DELETED`, record preserved for audit - UI confirmation dialog (`AlertDialog`) on `TenantDetailPage` - Audit log: `TENANT_DELETE` - API: `DELETE /api/vendor/tenants/{id}` Closing.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: cameleer/cameleer-saas#45