Das Fundament festigen — editierbare Rechtstexte, eine einheitliche Stimme in jeder E-Mail und ein Sicherheitsnetz, das wie ein Mensch testet

Das Fundament festigen — editierbare Rechtstexte, eine einheitliche Stimme in jeder E-Mail und ein Sicherheitsnetz, das wie ein Mensch testet

rechttransparenzdatenschutze-mailqualitättestingzuverlässigkeitalpha
Fiction

Das Fundament festigen — editierbare Rechtstexte, eine einheitliche Stimme in jeder E-Mail und ein Sicherheitsnetz, das wie ein Mensch testet

Ein Leuchtturm auf einer felsigen Küste — Symbol für ein Fundament, das auch dann trägt, wenn die See rau wird Foto: Rich Martello auf Unsplash

Die letzten Wochen hatten ein großes, sichtbares Thema: OutaStory wurde persönlich. Eine Startseite, die mitlernt; ein Profil, das tatsächlich etwas bedeutet; ein Einblicks-Layer für Autor:innen. Das war die Hälfte über der Wasserlinie — das, was man sieht und anklickt. Die letzten Tage drehten sich um die andere Hälfte, die man im besten Fall nie bemerkt, weil sie einfach trägt: das Fundament.

Fundament klingt unspektakulär, und genau das ist der Punkt. Eine Plattform, die Geschichten für Menschen jeden Alters anbietet, die Konten verwaltet, E-Mails verschickt und an die sich Leute mit ihren Daten anvertrauen, lebt nicht von der nächsten glänzenden Funktion, sondern davon, dass die unsichtbaren Dinge stimmen: dass die Rechtstexte aktuell und verständlich sind, dass jede E-Mail nach derselben Plattform aussieht, dass eine veröffentlichte Geschichte auch wirklich erscheint — und dass jemand all das prüft, bevor es euch erreicht. Genau darum ging es in dieser Phase, und zwar in drei Strängen: Rechtstexte, die leben, eine Stimme in jeder E-Mail und ein Sicherheitsnetz, das wie ein Mensch testet.

Rechtstexte, die leben — versioniert, zweisprachig, an einer Stelle pflegbar

Eine Hand unterschreibt ein Dokument mit einem Stift — Symbol für Rechtstexte, die nicht im Code festgemauert, sondern bewusst gepflegt werden Foto: Haim Charbit auf Unsplash

Rechtstexte sind das Kleingedruckte, das niemand schreiben will und alle brauchen: Nutzungsbedingungen, Datenschutzerklärung, Impressum, Widerrufsbelehrung, Cookie-Hinweis, die Bedingungen für Autor:innen, die Wettbewerbsregeln. Bisher lebten diese Texte als fest verdrahtete Seiten im Code. Das funktioniert, hat aber zwei Probleme: Jede noch so kleine Korrektur an einem Komma braucht ein Entwickler-Release, und es gibt keine Historie — keine Antwort auf die Frage „Was genau stand am Tag X in den Bedingungen, als ich zugestimmt habe?".

Deshalb sind die rechtlichen Seiten in dieser Phase auf ein eigenes, schlankes Redaktions-System umgezogen. Das klingt größer als es ist und bedeutet konkret drei Dinge:

Erstens: an einer Stelle bearbeitbar. Alle dreizehn rechtlichen Seiten lassen sich jetzt über eine geschützte Administrations-Oberfläche pflegen, in Markdown, ohne Code-Release. Eine Tippfehler-Korrektur ist eine Sache von Minuten, nicht von einem Deploy-Zyklus.

Zweitens: versioniert und datiert. Jede freigegebene Fassung wird als unveränderliche, datierte Version gespeichert. Wenn sich die Nutzungsbedingungen ändern, bleibt die alte Fassung erhalten und nachvollziehbar — die Plattform kann jederzeit belegen, welche Fassung wann gültig war. Die öffentliche Seite zeigt immer die zuletzt freigegebene Version mit ihrem Freigabedatum; eine Entwurfsfassung lässt sich in Ruhe vorbereiten und erst dann veröffentlichen, wenn sie fertig ist.

Drittens: zweisprachig, mit deutscher Fassung als Maßgabe. OutaStory ist eine deutsche Plattform, und die deutsche Fassung ist die rechtlich maßgebliche. Die englische Übersetzung entsteht KI-gestützt aus dem deutschen Text — als sauber gekennzeichneter Entwurf, der vor der Freigabe gegengelesen wird. So bleiben beide Sprachfassungen synchron, ohne dass jede Änderung zweimal von Hand getippt werden muss.

Parallel dazu wurde die Datenschutzerklärung neu sortiert. Eine einzige, alles umfassende Datenschutz-Seite ist für niemanden gut lesbar — eine Besucherin, die nur stöbert, hat ganz andere Fragen als ein Mitglied mit Konto oder eine Autorin, die veröffentlicht und an Einnahmen beteiligt wird. Deshalb gibt es jetzt drei klar getrennte Datenschutz-Hinweise: einen für Website-Besucher:innen, einen für Mitglieder und einen für Autor:innen. Jeder Hinweis spricht genau die Datenverarbeitung an, die für diese Rolle relevant ist — was erhoben wird, warum, wie lange, und an wen es geht. Weniger Wand aus Text, mehr „das hier betrifft mich".

Das ist keine glamouröse Arbeit. Aber sie passt zur Grundhaltung des Projekts: persönlicher werden, ohne intransparent zu werden. Wer uns Daten anvertraut, soll an einer verständlichen Stelle nachlesen können, was damit passiert — und soll sich darauf verlassen können, dass dieser Text gepflegt und aktuell ist.

Eine Stimme in jeder E-Mail

Geöffnete Briefumschläge — Symbol für Nachrichten, die aus einer Hand kommen und überall gleich aussehen Foto: Sue Hughes auf Unsplash

OutaStory verschickt mehr E-Mails, als man auf den ersten Blick denkt. Da ist der Newsletter (die tägliche Story des Tages und der wöchentliche Rückblick). Da sind Benachrichtigungen — jemand hat deine Geschichte kommentiert, eine neue Folge ist erschienen, du hast einen neuen Follower. Da sind transaktionale Nachrichten rund um Konto und Einnahmen-Beteiligung. Und da sind operative Hinweise im Hintergrund.

Diese Mails sind über Monate zu unterschiedlichen Zeitpunkten entstanden — und entsprechend unterschiedlich sahen sie aus. Manche trugen das volle, sorgfältig gestaltete Newsletter-Design mit Logo, Kopf- und Fußzeile; andere waren schlichter, fast nackter Text. Für die Empfängerin entsteht daraus ein leiser, aber unangenehmer Eindruck: Kommt das eigentlich von derselben Plattform? Eine Mail, die anders aussieht als die anderen, fühlt sich schnell weniger vertrauenswürdig an — manchmal sogar nach Spam.

Deshalb wurde in dieser Phase jede automatisch verschickte E-Mail auf dasselbe, gepflegte Design gehoben: dieselbe MJML-Vorlage, die schon der Newsletter benutzt, mit demselben Logo, demselben Kopf- und Fußbereich, denselben Abständen und Farben. Eine Benachrichtigung über einen neuen Kommentar sieht jetzt aus wie ein kleiner Geschwisterteil des Newsletters — eindeutig OutaStory, eindeutig aus einer Hand. Es gibt genau eine bewusste Ausnahme, und das ist eine seltene, festliche Ankündigungs-Mail, die absichtlich eigenständig bleibt.

Das ist Detailpflege, die man einzeln kaum bemerkt — aber in der Summe macht sie den Unterschied zwischen „eine zusammengewürfelte Sammlung von Diensten" und „eine Plattform mit einer Stimme". Und Vertrauen entsteht genau aus solchen Summen.

Ein Sicherheitsnetz, das wie ein Mensch testet

Ein grünes Kletter-Sicherungsseil im Fokus — Symbol für ein Netz, das vor dem Sturz greift, ohne dass man es im Alltag sieht Foto: Brook Anderson auf Unsplash

Der dritte und größte Strang war ein Stück Infrastruktur, das ihr im besten Fall nie zu Gesicht bekommt — und gerade deshalb so wichtig ist. OutaStory hat schon seit Monaten Tausende automatischer Tests, die nach jeder Änderung prüfen, ob die einzelnen Bausteine für sich genommen funktionieren. Das ist gut und unverzichtbar, aber es prüft die Teile, nicht das Ganze. Was diese Tests nicht beantworten: Funktioniert die echte, zusammengebaute, laufende Plattform — so, wie ein Mensch sie tatsächlich benutzt?

Deshalb entstand in dieser Phase eine zweite, neue Test-Schicht: ein automatisches End-to-End-Sicherheitsnetz, das die live laufende Plattform in einem echten Browser durchspielt — nicht eine Nachbildung im Labor, sondern dieselbe Seite, die auch ihr seht. Es meldet sich an wie eine echte Nutzerin, stöbert auf der Startseite, öffnet Geschichten, blättert durch Kapitel, schreibt und beantwortet Kommentare, vergibt Bewertungen, folgt Autor:innen, legt einen Entwurf an, veröffentlicht eine Geschichte und löscht sie wieder, ruft die Hilfe-Seiten, die Suche, den Dunkel- und Hell-Modus, die Sprachumschaltung auf — und arbeitet sich durch sämtliche Verwaltungs- und Moderations-Oberflächen. Kurz: es geht denselben Weg wie eine Leserin, eine Autorin und eine Administratorin, hintereinander weg, immer wieder.

Drei Dinge waren dabei besonders wichtig und haben eigene Arbeit gekostet:

Es darf für euch unsichtbar bleiben. Alles, was dieses Netz unterwegs anlegt — Testkommentare, Test-Geschichten —, ist sauber markiert, für echte Nutzer:innen unsichtbar und wird nach jedem Durchlauf zuverlässig wieder restlos entfernt. Eine echte Leserin bekommt von alledem nie etwas zu sehen.

Es fasst nichts Gefährliches an. Alles, was sich nicht zurücknehmen lässt — echte Zahlungen, Newsletter-Versand, das Sperren von Konten —, prüft das Netz nur bis kurz vor dem unwiderruflichen Klick und stoppt dort. Es testet, dass der Weg funktioniert, ohne ihn scharf zu schalten.

Es kann gar nicht aus Versehen loslaufen. Das Ganze ist doppelt und dreifach abgesichert, damit es nur dann gegen die Produktion läuft, wenn ein Mensch das bewusst auslöst — niemals automatisch, niemals nebenbei.

Der Sinn dahinter ist einfach: Probleme, die zwischen den Bausteinen entstehen — wenn das Zusammenspiel hakt, obwohl jeder Teil für sich richtig ist —, fallen in herkömmlichen Tests durch das Raster. Genau diese Art von Problem soll dieses Netz fangen, bevor sie bei euch ankommt. Es ist die Sorte Investition, die sich nie in einer schicken Funktion niederschlägt und trotzdem den Unterschied macht zwischen einer App, die sich solide anfühlt, und einer, die an den Nähten knirscht.

Hunderte kleine Kanten geglättet

Neben diesen drei großen Strängen lief das, was in jeder Phase läuft: das geduldige Glätten kleiner Kanten. Layouts, die an ungewöhnlichen Bildschirmgrößen nicht perfekt saßen; Abläufe, die einen Tick zu langsam waren; Stellen, an denen die Anordnung auf einer Seite logischer sein konnte. Nichts davon ist für sich genommen eine Schlagzeile — aber in der Summe ist es der Unterschied zwischen „funktioniert" und „fühlt sich gut an". Und ein gutes Sicherheitsnetz hilft genau dabei: Es zeigt diese Kanten, bevor jemand anders darüber stolpert.

Zahlen zum Stand

  • Pull-Requests: rund 25 in den Tagen seit dem letzten Blog-Post — Schwerpunkt auf Fundament statt auf neuer Oberfläche.
  • Hauptthemen: editierbares, versioniertes, zweisprachiges Rechtstext-System für alle dreizehn rechtlichen Seiten; Datenschutzerklärung in drei rollenbezogene Hinweise aufgeteilt; einheitliches E-Mail-Design über alle automatischen Nachrichten; ein automatisches End-to-End-Sicherheitsnetz gegen die laufende Plattform; viel stilles Kanten-Glätten.
  • Katalog: unverändert breit — die Tausenden gemeinfreien Klassiker und die personalisierte Startseite der Vorwochen sind live und stabil.
  • Tests: weiterhin im hohen Drei-Tausender-Bereich an grünen Unit-Tests, jetzt ergänzt um die neue End-to-End-Schicht gegen die echte Plattform.

Was als nächstes

  • Das Sicherheitsnetz auswerten — die spannendste laufende Arbeit: das neue End-to-End-Netz regelmäßig laufen lassen und jeden Fund in eine konkrete Verbesserung übersetzen.
  • Rechtstexte feinschleifen — jetzt, da sie sich an einer Stelle pflegen lassen, eine ruhige Lese-Runde durch alle dreizehn Seiten, auf Verständlichkeit statt nur Korrektheit.
  • Personalisierung schärfen — die Empfehlungs-Reihen werden besser, je mehr reale Lese-Historie zusammenkommt.
  • Jugendschutz scharf stellen — die Alters-Engine ist gebaut und wartet weiter auf die Freigabe der Verifikations-Methode durch unsere Datenschutzbeauftragte.
  • App.Shared-Razor-Pages-Tests — der letzte rote Coverage-Eintrag, weiter in Wochen-Wellen.

Diese Phase fühlte sich anders an als die Wochen davor — weniger sichtbar, dafür beruhigender. Es ist der Unterschied zwischen „die Plattform kann jetzt mehr" und „die Plattform trägt jetzt mehr". Wenn dir beim Stöbern, Lesen oder Veröffentlichen irgendetwas auffällt, das sich nicht solide anfühlt — eine Seite, die komisch aussieht, eine Mail, die nicht passt, eine Geschichte, die nicht so erscheint, wie du sie veröffentlicht hast —, sag mir Bescheid. Genau solche Risse im Fundament will ich finden, solange das Netz noch greift.


Comments (0)

No comments yet.

Comments are closed for this post.

Something went wrong

An unhandled error has occurred.

Reload the page to pick up where you left off.

Reload

Connection lost

Reconnecting to the server…

Reconnect failed. Trying again in seconds.

We couldn't reconnect to the server. Retry, or reload the page.

The session was paused by the server.

The session couldn't be resumed. Please reload the page.