feat(teamsbot): show credentialDebug panel in auth test UI

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
ValueOn AG 2026-02-17 00:03:02 +01:00
parent 4e41801c63
commit 73bc6c08ae
2 changed files with 39 additions and 6 deletions

View file

@ -140,6 +140,16 @@ export interface AuthTestResults {
variants: AuthTestResult[];
recommendation: string;
credentialsReceived?: { hasEmail: boolean; hasPassword: boolean };
credentialDebug?: {
mandateId?: string;
botFound?: boolean;
botEmail?: string;
botMandateId?: string;
searchStrategy?: string;
allBotsCount?: number;
passwordDecrypted?: boolean;
passwordError?: string;
};
}
// SSE Event Types

View file

@ -343,12 +343,35 @@ export const TeamsbotSettingsView: React.FC = () => {
</tbody>
</table>
{(testResults.credentialsReceived || testResults.credentialDebug) && (
<div className={styles.testLogContainer} style={{ margin: '0.5rem 0' }}>
<div className={styles.testLogLine} className={styles.testLogInfo}>
<strong>Credential-Debug:</strong>
</div>
{testResults.credentialsReceived && (
<div className={styles.testRecommendation} style={{ marginBottom: '0.5rem' }}>
<strong>Credentials:</strong>{' '}
Email: {testResults.credentialsReceived.hasEmail ? <span className={styles.testCheckmark}>&#10003;</span> : <span className={styles.testCross}>&#10007; FEHLT</span>}
{' | '}
Passwort: {testResults.credentialsReceived.hasPassword ? <span className={styles.testCheckmark}>&#10003;</span> : <span className={styles.testCross}>&#10007; FEHLT</span>}
<div className={`${styles.testLogLine} ${testResults.credentialsReceived.hasEmail ? styles.testLogInfo : styles.testLogError}`}>
Bot empfangen: Email={testResults.credentialsReceived.hasEmail ? 'ja' : 'NEIN'} | Passwort={testResults.credentialsReceived.hasPassword ? 'ja' : 'NEIN'}
</div>
)}
{testResults.credentialDebug && (
<>
<div className={`${styles.testLogLine} ${styles.testLogInfo}`}>
Suche: mandateId={testResults.credentialDebug.mandateId} | Strategie={testResults.credentialDebug.searchStrategy}
</div>
<div className={`${styles.testLogLine} ${testResults.credentialDebug.botFound ? styles.testLogInfo : styles.testLogError}`}>
Bot gefunden: {testResults.credentialDebug.botFound ? 'ja' : 'NEIN'}
{testResults.credentialDebug.botEmail && ` | ${testResults.credentialDebug.botEmail}`}
{testResults.credentialDebug.botMandateId && ` | bot-mandate=${testResults.credentialDebug.botMandateId}`}
{testResults.credentialDebug.allBotsCount !== undefined && ` | total=${testResults.credentialDebug.allBotsCount}`}
</div>
{testResults.credentialDebug.passwordDecrypted !== undefined && (
<div className={`${styles.testLogLine} ${testResults.credentialDebug.passwordDecrypted ? styles.testLogInfo : styles.testLogError}`}>
Passwort entschluesselt: {testResults.credentialDebug.passwordDecrypted ? 'ja' : 'NEIN'}
{testResults.credentialDebug.passwordError && ` | Fehler: ${testResults.credentialDebug.passwordError}`}
</div>
)}
</>
)}
</div>
)}