fix(07): SMTP test warns when connection passes but no auth configured
Tessera CI/CD / Lint & Type Check (push) Waiting to run
Tessera CI/CD / Tests (push) Blocked by required conditions
Tessera CI/CD / Build & Deploy (push) Blocked by required conditions

Server reachable without credentials (port 25 open relay) returns
{ success: true, warning: 'no_auth' } instead of green success.
Frontend shows red warning: server reachable but emails will fail.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-28 01:29:53 +02:00
parent 853095faef
commit 4de87a8ea2
5 changed files with 22 additions and 13 deletions
@@ -115,7 +115,9 @@ export function SmtpSettingsForm() {
setTestFeedback({ type: 'loading', message: t('smtp.testTesting') });
try {
const result = await testSmtp(buildPayload());
if (result.success) {
if (result.success && result.warning === 'no_auth') {
setTestFeedback({ type: 'error', message: t('smtp.testNoAuth') });
} else if (result.success) {
setTestFeedback({ type: 'success', message: t('smtp.testSuccess') });
} else {
setTestFeedback({ type: 'error', message: t('smtp.testFailed') });
+1 -1
View File
@@ -77,7 +77,7 @@ export async function saveSmtp(payload: SaveSmtpPayload): Promise<SmtpConfig> {
*/
export async function testSmtp(
payload: SaveSmtpPayload,
): Promise<{ success: boolean }> {
): Promise<{ success: boolean; warning?: string }> {
const res = await fetch(`${API_URL}/settings/smtp/test`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
+2 -1
View File
@@ -135,7 +135,8 @@
"hidePassword": "Passwort verbergen",
"testTesting": "Verbindung wird getestet...",
"testSuccess": "Verbindung erfolgreich",
"testFailed": "Verbindung fehlgeschlagen"
"testFailed": "Verbindung fehlgeschlagen",
"testNoAuth": "Server erreichbar, aber keine Zugangsdaten konfiguriert — E-Mail-Versand wird fehlschlagen"
}
},
"widgets": {