Report · Journey-QA · Prüfschritte · Neos-GAP

Projektportal User Journeys — Prüfschritte, Evidence und GAP zum Neos-Projektportal

Live-Prüfung am 18.06.2026 auf https://solcom.ddev.site mit agent-browser, Mailpit und Drush/SQL. Der Report ergänzt den Parity-Audit vom 17.06. um aktuelle Screenshots, Videos und konkrete Abnahme-Prüfschritte.

Branch: feature/fix-rsm-profile-application Commit: 41da059 Drupal: 11.3.12 Browserpfad: agent-browser, keine Playwright-/DevTools-Nutzung Testkonto: ppp.qa.reg.20260618.02@example.com
Live bestanden Registrierung mit Upload, Double-Opt-In, Login, Profil-Hub, Profilbearbeitung, Suchagent, Merkliste, Projektliste/-Detail und Passwort-Reset wurden mit Screenshots bzw. Videos belegt.
Eingeschränkt geprüft Konto-Einstellungen sind live vorhanden, aber E-Mail-Wechsel-Double-Opt-In und Konto-Löschung wurden nicht destruktiv durchgespielt. Die Projektbewerbung ist bis Upload/Validierung belegt, der Submit blieb ohne Erfolgsmeldung.
Harter GAP Die Neos-Journey „Verfügbarkeit melden“ ist in Drupal nicht erreichbar. Der 404-Fallback rendert zusätzlich mit einem SDC-Enum-Fehler.
Abnahmefokus Die wichtigsten offenen Neos-Gaps sind RMS/PPP-ID-Vergabe, E-Mail-Wechsel-DOI, Verfügbarkeit, Gast-Suchagent, Bewerbungsabschluss und mehrere Mail-/Security-Härtungen.

1. Statusmatrix der User Journeys

JourneyStatusLive-Befund am 18.06.2026Evidence
Registrieren & Aktivieren bestanden 3-stufige Registrierung, Pflichtfelder auf Seite 1, Datei-Upload, gesperrter User, Mailpit-Verifizierung und Aktivierung funktionieren. Video · Screenshots 08, 10-16 · SQL UID 17 Status 0 → 1
Login bestanden Login mit E-Mail und Passwort führt ins Projektportal; Profil-Hub zeigt Daten, Dokument, Account, Suchagent und Merkliste. Video · Screenshot 18
Passwort vergessen bestanden Reset-Formular sendet nach Honeypot-Wartezeit die generische Enumeration-sichere Meldung; Mailpit zeigt Reset-Mail. Video · Screenshots 28-32
Account-Daten ändern teilweise /projektportal/konto/einstellungen existiert mit Passwort, E-Mail, Magazin-Opt-In und Konto-Löschen-Link. E-Mail-Wechsel-Double-Opt-In wurde nicht verifiziert. Screenshot 22
Account löschen nicht destruktiv ausgeführt Der Lösch-Einstieg ist sichtbar. Vollständige Löschung wurde nicht am Testkonto ausgeführt, weil derselbe Account für weitere Evidence gebraucht wurde. Screenshot 22 · vorhandener Dogfood-Report 2026-06-16
Profil & Dokumente pflegen bestanden Profilbearbeitung speichert Stundensatz, Verfügbarkeit und Einsatzorte; Upload-Dokument bleibt im Profil sichtbar. Video · Screenshots 19-21
Projekt finden & merken bestanden Projektliste, Detailseite, anonyme Merkliste und eingeloggte Merkliste sind erreichbar. Persistenz wurde in users_data nachgewiesen. Screenshots 01-04, 26-27 · SQL users_data
Auf Projekt bewerben teilweise / Submit offen Gast-Bewerbungsformular ist sichtbar und Datei-Upload funktioniert. Mehrere Submit-Versuche erzeugten keine Danke-Seite und keine neue webform_submission. Videos 06-07 · Screenshots 34-36 · SQL: kein neuer Submission-Satz nach SID 14
Suchagent / Projekt-Alert bestanden Eingeloggter Suchagent lässt sich mit Region Deutschland speichern; Entity ppp_alert wurde mit Status aktiv angelegt. Video · Screenshots 23-25 · SQL ppp_alert
Verfügbarkeit melden fehlt /projektportal/verfuegbarkeit liefert 404. Zusätzlich bricht die 404-Seite wegen byte_theme:text/text_size mit Wert text-3xl gegen das SDC-Enum. Screenshot 33

2. Prüfschritte für die Abnahme

2.1 Registrierung und Aktivierung

  1. /projektportal/registrieren anonym öffnen.
  2. Seite 1 ausfüllen, PDF/DOC hochladen, Datenschutz und Nutzungserklärung anhaken, weiter klicken.
  3. Seite 2 und Seite 3 leer lassen und absenden.
  4. In Mailpit die Mail „Projektpartner-Account verifizieren“ öffnen und den Verifizierungslink aufrufen.
  5. Erwartet: User ist vor Link-Klick gesperrt, danach aktiv; Browser zeigt den Login und die Aktivierungsmeldung.

2.2 Login und Profil-Hub

  1. /user/login öffnen.
  2. Mit der registrierten E-Mail und Passwort anmelden.
  3. Erwartet: Redirect ins Portal; kein Admin-Chrome; Bereiche „Meine Daten“, „Mein Account“, „Meine Dokumente“, „Mein Projekt Alert“ sichtbar.

2.3 Profil bearbeiten

  1. /projektportal/profil/bearbeiten öffnen.
  2. Stundensatz, Verfügbarkeit und Einsatzorte ändern und speichern.
  3. Erwartet: Statusmeldung „Das Profil wurde gespeichert“; Profil-Hub zeigt die geänderten Werte.
  4. Nachtest offen: Prüfen, ob eine Profiländerungs-Mail bzw. Queue-Auslieferung an den vorgesehenen SF-Übergangskanal entsteht.

2.4 Konto-Einstellungen und Konto-Löschung

  1. /projektportal/konto/einstellungen öffnen.
  2. Passwortwechsel und Magazin-Opt-In prüfen.
  3. E-Mail-Adresse ändern und Mailpit beobachten.
  4. Erwartet: Passwortwechsel speichert; E-Mail-Wechsel darf erst nach Bestätigung der neuen Adresse final werden.
  5. Destruktiver Prüfschritt: Mit einem frischen Wegwerfaccount Konto löschen und danach prüfen, dass Login, Profil und private Dateien entfernt sind.

2.5 Projektliste, Detail und Merkliste

  1. /fuer-freiberufler/projektliste anonym öffnen.
  2. Ein Projekt öffnen, „Zur Merkliste hinzufügen“ klicken und /projektportal/merkliste öffnen.
  3. Einloggen und Merkliste erneut prüfen.
  4. Erwartet: Das gemerkte Projekt erscheint anonym und nach Login; eingeloggte Speicherung ist serverseitig persistiert.

2.6 Bewerbung auf ein Projekt

  1. Projekt-Detailseite öffnen und „Jetzt bewerben“ klicken.
  2. Gastformular ausfüllen, Datei hochladen, Datenschutz anhaken.
  3. Absenden und danach Mailpit sowie webform_submission prüfen.
  4. Erwartet: Danke-/Erfolgsmeldung, neuer rsm_project_offer_application-Submission-Satz, interne Bewerbungsmail und optional Bewerber-Bestätigung.
  5. Aktueller Befund: Upload ist belegt, Submit erzeugte im Live-Nachtest keine neue Submission und keine sichtbare Erfolgsmeldung.

2.7 Suchagent / Projekt-Alert

  1. Eingeloggt /projektportal/suchagent öffnen.
  2. Region Deutschland aktivieren, optional Skills ergänzen, Suchagent speichern.
  3. Erwartet: Statusmeldung „Ihr Suchagent wurde gespeichert“; Button wechselt zu „Suchagent speichern“ und „Suchagent löschen“; DB enthält aktive ppp_alert-Entity.
  4. Nachtest offen: Cron-/Treffer-Mail mit passendem Projektangebot auslösen.

2.8 Passwort-Reset

  1. Anonym /user/password öffnen.
  2. E-Mail eintragen und nach mindestens sechs Sekunden absenden.
  3. Erwartet: Enumeration-sichere Meldung; Mailpit zeigt Passwort-Reset-Mail.
  4. Hinweis: Ein zu schneller Submit wird durch Honeypot geblockt; das ist beabsichtigtes Verhalten.

2.9 Verfügbarkeit

  1. /projektportal/verfuegbarkeit?id=test oder den späteren echten Token-Link öffnen.
  2. Erwartet aus Neos: Token-Link zeigt Verfügbarkeitsformular, speichert Rückmeldung und bestätigt per Mail/Status.
  3. Aktueller Befund: Route fehlt; 404-Seite rendert zusätzlich fehlerhaft.

3. GAP-Matrix zum Neos-Projektportal

Neos-CapabilityDrupal-BefundGAP / nächster Prüfschritt
Registrierung mit Aktivierungslink umgesetzt Webform-Wizard, gesperrter User und Aktivierungsmail funktionieren. RMS/PPP-ID-Vergabe bzw. SF-Rücksync für Neuregistrierungen als Join-Key verifizieren.
Login inklusive Gastdatenübernahme teilweise Login und Merkliste-Merge funktionieren; Gast-Suchagent ist nicht belegt. Gast-Suchagent mit Double-Opt-In und Übernahme in Account fehlt oder ist nicht im MVP.
Passwort vergessen / zurücksetzen umgesetzt Core-Flow mit Honeypot und Mailpit belegt. Legacy-Tokenlaufzeiten gegen Drupal-Core-Timeout fachlich entscheiden.
Zugangsdaten ändern teilweise Account-Form existiert. E-Mail-Wechsel muss Bestätigung der neuen Adresse erzwingen; live noch nicht belegt.
Account löschen teilweise Einstieg sichtbar, Dogfood-Report nennt vorhandene Löschlogik. Destruktiver End-to-End-Test mit Wegwerfaccount: User, Profil, private Dateien, Logout.
Profil und Unterlagen pflegen umgesetzt Bearbeitung und Speicherung live belegt. Benachrichtigungs-/SF-Übergangsmail nach Profiländerung im aktuellen Lauf nicht beobachtet.
Projekt finden, merken, Merkliste umgesetzt Liste, Detail, anonyme und eingeloggte Merkliste funktionieren. CSRF-Härtung der Raw-Routen aus Parity-Audit nachziehen bzw. erneut prüfen.
Auf Projekt bewerben teilweise Formular und Upload funktionieren; Submit-Bestätigung nicht belegt. Submit-Blocker klären, interne Recruiting-Mail mit Anhängen und Bewerber-ACK prüfen.
Suchagent / Projekt-Alert für eingeloggte Nutzer umgesetzt Speichern und Entity-Anlage belegt. Neos-Gaps: Gast-Suchagent, Hash-Abmeldung, Gebiets-Ausschluss/UND-ODER-Logik und echte Treffer-Mail prüfen.
Verfügbarkeit melden fehlt Keine erreichbare Route. Komplette Journey neu schneiden: Token-Mail, Formular, Speicherung, Abmeldung/Status, Follow-up-Mails.
Magazin-/Newsletter-Opt-In UI teilweise vorhanden Checkbox in Konto-Einstellungen sichtbar. Mailingwork-/Marketing-Anbindung nicht live belegt; Scope-Entscheidung erforderlich.

4. Findings aus dem aktuellen Live-Durchlauf

PrioritätBefundBelegEmpfohlene Aktion
hoch Verfügbarkeits-Journey fehlt; zusätzlich bricht die 404-Seite wegen ungültigem SDC-Enum text-3xl. Screenshot 33, URL /projektportal/verfuegbarkeit?id=test. 404-SDC-Fehler separat reparieren; Availability als eigenes Ticket/Phase-2-Scope sauber entscheiden.
hoch Projektbewerbung: Gastformular lässt Upload zu, aber Submit erzeugte keine Erfolgsmeldung und keinen neuen Submission-Satz. Videos 06/07, Screenshots 34-36, SQL: letzter neuer Satz bleibt SID 14 (projektpartner_registration). Form-Submit serverseitig debuggen; danach Mailpit und webform_submission als Pflichtbeleg aufnehmen.
mittel Account-E-Mail-Wechsel ist als Formularfeld vorhanden, Double-Opt-In-Verhalten aber nicht belegt. Screenshot 22. Mit Wegwerfaccount E-Mail ändern und bestätigen, dabei alte/neue Adresse und Login-Verhalten prüfen.
mittel Profiländerungs-Mail/SF-Übergang wurde nach Profil-Save in diesem Lauf nicht in Mailpit beobachtet. Screenshots 19-21, Mailpit-Zählung nach Profil-Save ohne eindeutige neue Profilmail. Queue/Mail-Auslieferung gezielt mit Drush-Queue und Mailpit prüfen.
tooling Einige UI-Klicks per agent-browser click trafen nicht zuverlässig; DOM-Klicks bestätigten jedoch die sichtbaren Links/Buttons. Projektdetail/Merkliste in der Browser-Evidence. Nicht als Produktfehler werten, solange manuell reproduzierbar korrekt; bei Abnahme mit echter Maus gegenprüfen.

5. Evidence: Screenshots und Videos

Vollständiger Asset-Ordner: docs/reports/assets/2026-06-18-projektportal-journeys/. Der Screenshot-Satz umfasst 01 bis 36; die relevanten aktuellen Videos sind 03 bis 07.

Registrierung mit Upload, Verifizierungsmail und Aktivierung.
Login, Profil-Hub, Profilbearbeitung, Suchagent und Merkliste.
Passwort-Reset inklusive Honeypot-Hinweis und erfolgreicher Reset-Mail.
Bewerbungsformular mit sauberem Upload; Submit bleibt im Nachtest offen.
Repräsentative Screenshots
Projektliste anonym
01 — Projektliste anonym.
Profil-Hub nach Login
18 — Profil-Hub nach Login.
Profil gespeichert
21 — Profilwerte gespeichert.
Suchagent gespeichert
25 — Suchagent gespeichert.
Passwort-Reset Erfolgsmeldung
31 — Passwort-Reset Erfolgsmeldung.
Verfügbarkeit 404 mit SDC Fehler
33 — Verfügbarkeitsroute fehlt, 404-SDC-Fehler.
Bewerbungsformular ausgefüllt
34 — Bewerbung mit Upload vor Submit.
Bewerbung nach Submit ohne Erfolgsmeldung
36 — Bewerbung nach Submit-Versuch ohne Erfolgsmeldung.

6. Methodik und Quellen

Browser: Alle Navigations-, Interaktions-, Screenshot- und Video-Schritte liefen über agent-browser.

Systembelege: Drupal-Status, Routen, User-, ppp_alert-, users_data- und webform_submission-Tabellen wurden über ddev drush geprüft.

Dokuquellen: Neos Flow Inventory 0009, Neos Formular-Mockups 0010, Dogfood-QA 2026-06-16 und Parity-Audit 2026-06-17.

Grenze: Der Bericht dokumentiert den aktuellen lokalen DDEV-Zustand am 18.06.2026. Er ist kein Ersatz für den finalen Pre-Go-Live-Lauf gegen Staging/Production-Daten.