c89fd5da98
CreateTenant and UpdateAPIKey both overwrote tenant.APIKey with the AES-encrypted ciphertext before returning, causing the UI to display "enc:v1:..." right after generating or resetting an API key. Save the plaintext in a local variable, encrypt only the value handed to UpdateTenant, and return the plaintext to callers. Subsequent reads via GetTenantByID continue to rely on the AfterFind hook for transparent decryption, so this only affects the initial write-back path.