Rename user archive action to deactivate

"Archive" was misleading for users: the action sets a profile to
DEACTIVATED while keeping the person in the organization. Rename it to
"deactivate" across the API, CLI, MCP, n8n, and console UI.

Consolidate the two overlapping operations into a single deactivateUser
backed by the fuller, guarded logic (SCIM guard, last-active-owner
guard, invitation expiry, signature cancellation, membership update,
webhook) and authorized via iam:membership-profile:deactivate. Remove
the archiveUser surface and the thin state-only deactivate path.

Signed-off-by: Émile Ré <emile@probo.com>
This commit is contained in:
Émile Ré
2026-07-28 17:30:14 +02:00
parent 99c3235b46
commit b10fc55b7f
14 changed files with 130 additions and 208 deletions

View File

@@ -2427,19 +2427,19 @@
"people": "Personnes"
},
"messages": {
"archived": "Personne archivée avec succès",
"deactivated": "Personne désactivée avec succès",
"removed": "Personne supprimée avec succès"
},
"errors": {
"archive": "Échec de l’archivage de la personne",
"deactivate": "Échec de la désactivation de la personne",
"remove": "Échec de la suppression de la personne"
},
"confirmations": {
"archive": "Voulez-vous vraiment archiver {{name}} ?",
"deactivate": "Voulez-vous vraiment désactiver {{name}} ?",
"remove": "Voulez-vous vraiment supprimer {{name}} ?"
},
"actions": {
"archive": "Archiver",
"deactivate": "Désactiver",
"remove": "Supprimer"
}
},
@@ -2469,25 +2469,25 @@
"messages": {
"invitationSent": "Invitation envoyée avec succès",
"roleUpdated": "Rôle mis à jour avec succès",
"archived": "Personne archivée avec succès",
"deactivated": "Personne désactivée avec succès",
"removed": "Personne supprimée avec succès"
},
"errors": {
"sendInvitation": "Échec de l’envoi de l’invitation",
"updateRole": "Échec de la mise à jour du rôle",
"archive": "Échec de l’archivage de la personne",
"deactivate": "Échec de la désactivation de la personne",
"remove": "Échec de la suppression de la personne"
},
"confirmations": {
"sendActivationEmail": "Envoyer l’e-mail d’activation à {{name}} ?",
"archive": "Voulez-vous vraiment archiver {{name}} ?",
"deactivate": "Voulez-vous vraiment désactiver {{name}} ?",
"remove": "Voulez-vous vraiment supprimer {{name}} ?"
},
"actions": {
"send": "Envoyer",
"sendActivationMail": "Envoyer l’e-mail d’activation",
"resendActivationMail": "Renvoyer l’e-mail d’activation",
"archivePerson": "Archiver la personne",
"deactivatePerson": "Désactiver la personne",
"removePerson": "Supprimer la personne"
}
},