Hinweis 05-3: Der Token-Fall im Panel

Stufe 1 zuerst lesen, dann selbst probieren. Die nächste Stufe erst, wenn du nach zwei Versuchen feststeckst.

Stufe 1: Denkfrage

Test C02-M5-04 ruft das Panel mit einem falschen Token auf und prüft zwei Dinge: eine Meldung mit data-testid="api-unauthorized" und dass der Token nirgends im HTML steht. Warum wäre "Token geheim-123 abgelehnt" eine schlechte Meldung, auch wenn sie hilfreich klingt?

Stufe 2: Teilbeispiel

In describeError:

if (error instanceof ApiError && error.kind === "unauthorized") {
  return { kind: "unauthorized" };
}

Im JSX:

{state.kind === "unauthorized" && (
  <p data-testid="api-unauthorized">Die Anmeldung beim Dienst wurde abgelehnt. Prüfe die Konfiguration in deiner .env-Datei.</p>
)}

Stufe 3: Konkrete Erklärung

Der Zustand unauthorized speichert bewusst keinen Token. Die Meldung sagt, was die Person tun kann (Konfiguration prüfen), ohne das Geheimnis zu zeigen. Für C02-M5-03: Suche in src/ nach test-token; der einzige erlaubte Fundort ist src/api/followUpApi.ts. Der Token kommt in App.tsx nur über readApiTokenFromEnv() herein. Für C02-M5-05 musst du nichts Neues bauen, wenn dein Speicherschlüssel aus Mission 3 die workspaceId enthält.

Zurück zu Mission 5: Fehler finden und Zugriff prüfen