# Golden-Path-Notiz W2: Kommentar-Spam manuell durchspielen

Kurze manuelle Pruefsequenz fuer den Kommentar-Kanal auf einer echten
WP-Instanz (Vorlage fuer TESTPLAN.md in W4). Voraussetzung: Wellenbrecher
aktiviert, Theme nutzt das Standard-Kommentarformular (comment_form()).

## Vorbereitung

1. Als Admin anmelden, Menue "Wellenbrecher" oeffnen: Einstellungen und
   Block-Log erscheinen (Cap hs_manage_spam). Beobachtungsmodus-Banner
   zeigt Restlaufzeit und den Knopf "Jetzt scharf schalten".
2. Beitragsseite im Inkognito-Fenster oeffnen, Quelltext pruefen:
   - Das Kommentar-Textfeld traegt einen Namen `wb_xxxxxxxxxx` (rotiert),
     NICHT `comment`.
   - Ein verstecktes Feld `name="comment"` (Honeypot, aria-hidden,
     tabindex -1) ist vorhanden.
   - Hidden-Felder `wb_js` (Zufallszahl 0-250), `wb_events`, `wb_token`.
   - signals.js ist eingereiht; nach Seitenladen steht in `wb_js` ein
     13-stelliger Timestamp, nach Mausbewegung in `wb_events` eine 1,
     in `wb_token` der Token vom REST-Endpoint /wellenbrecher/v1/token
     (Antwort mit no-cache-Headern).

## Beobachtungsmodus (Default an, 7 Tage)

3. Bot-Submit simulieren (curl, direkt an wp-comments-post.php, Felder
   author/email/comment/comment_post_ID): Der Kommentar geht DURCH in die
   normale Moderation. Im Block-Log erscheint er als "Markiert
   (Beobachtung)" mit Score und Gruenden (fehlender Token, fehlendes
   Accept-Language, UA-Bibliothek usw.).
4. In der Kommentar-Liste zeigt die Spalte "Wellenbrecher" Score und die
   zwei staerksten Gruende.

## Scharf geschaltet

5. "Jetzt scharf schalten" klicken (oder Fenster ablaufen lassen).
6. Bot-Submit mit hohem Score wiederholen (z.B. zusaetzlich Honeypot-Feld
   `comment` befuellen und BBCode-Link in den Inhalt): Antwort ist ein
   knapper 403 ("Ihr Kommentar konnte nicht angenommen werden."), der
   Kommentar existiert NICHT in der Datenbank (kein Eintrag in
   wp_comments, keine verbrauchte ID), aber im Block-Log als "Blockiert".
7. Grenzwertigen Submit simulieren (Score 40-79, z.B. nur fehlender Token
   + zwei Links): Kommentar landet im WP-Spam-Ordner, Breakdown-Spalte
   zeigt die Gruende, Block-Log fuehrt ihn als "Quarantaene".
8. Normalen Kommentar als echter Besucher absenden (Formular im Browser,
   kurz warten, Maus bewegen): laeuft unauffaellig durch.

## Lern-Feedback und Optionen

9. Quarantaene-Kommentar im Spam-Ordner auf "Kein Spam" setzen: Die
   E-Mail-Adresse ist ab sofort allowgelistet (Trust-Abzug -30); ein
   erneuter Submit derselben Adresse bekommt sichtbar weniger Punkte.
10. Denselben Kommentar wieder als Spam markieren: Allowlist-Eintrag ist
    entfernt (WB11), Statistik zaehlt manual_spam.
11. XML-RPC-Option aktivieren: `curl -d '<methodCall>...' /xmlrpc.php`
    mit system.listMethods zeigt pingback.ping und wp.newComment nicht
    mehr; die Datei selbst antwortet weiterhin.
12. Block-Log: Filter nach Kanal/Verdict, Bulk-Loeschen, Pagination.
13. Einstellungen: Zonen aendern + "Zurueck auf Standard (40/80)",
    eigenes Keyword eintragen und Submit damit pruefen (+25).

## Kompatibilitaets-Fallback

14. Theme mit eigenem Kommentar-Markup (ohne comment_form_field_comment):
    Formular funktioniert unveraendert, es gibt nur kein Honeypot-/
    Feld-Tausch-Signal; alle uebrigen Regeln laufen normal.
