Skip to content

Qualitätsprüfung: „hässlich" messbar machen - #68

Merged
flomotlik merged 1 commit into
mainfrom
feature/qualitaetspruefung-check
Sep 25, 2026
Merged

flomotlik merged 1 commit into
mainfrom
feature/qualitaetspruefung-check

Conversation

@flomotlik

Copy link
Copy Markdown
Contributor

Geschmack lässt sich nicht prüfen, einiges von dem was ein Sujet falsch aussehen lässt aber schon. check() liefert { ok, errors, warnings, findings }.

Fehler sind Regelverstöße: Schutzzone verletzt (rotationsbewusst, alle vier Kanten), zwei Texte überdecken sich, Textabstand unter einem Viertel Zeilenhöhe, Textblock breiter als die nutzbare Fläche, mehr als ein Störer, Text auf einem Foto ohne grüne Fläche darunter.

Warnungen sind Ermessensfragen: enge Abstände, mehr als drei Zeilen, verwaiste Schlusszeile, sehr kleiner Text im Export, konkurrierende Akzente, Komposition stark aus der Mitte.

Drei bewusste Entscheidungen

Alles rechnet aus dem Objektmodell, ohne zweites Rendering. Ein Prüfer, der selbst rendert, wäre eine zweite Wahrheitsquelle — genau das, was diese Schnittstelle vermeiden soll. Das war auch die Vorgabe an die Reviewer, und sie haben sie eingehalten.

Wo die drei Reviewer auseinanderlagen, gilt der großzügigste Schwellwert. Sonst warnt es bei allem, und dann liest es niemand mehr.

export() prüft selbst und legt das Ergebnis bei — liefert das Bild aber trotzdem. Ob eine Überlappung von 12 % ein Fehler oder Absicht ist, weiß nur der Aufrufer. Zu blockieren wäre anmaßend, zu schweigen sinnlos: Niemand ruft check() aus Gewohnheit auf. Mit export({ check: false }) abschaltbar.

Der wichtigste Test ist der unauffälligste

Ein sauber gebautes Sujet erzeugt null Befunde. Ein Prüfer, der bei allem anschlägt, ist so nutzlos wie einer, der nie anschlägt.

Neun Tests, jeder baut genau einen Defekt und prüft, dass der Prüfer ihn benennt — plus der Gegenprobe, dass dieselbe Gestaltung mit grüner Fläche sauber durchgeht.

132 Jest grün, 147 e2e grün. VERSION auf 14.

https://claude.ai/code/session_01Qtib9MPRZATQU3j9w7ymDk

Geschmack laesst sich nicht pruefen, einiges von dem was ein Sujet
falsch aussehen laesst aber schon. check() liefert { ok, errors,
warnings, findings }; jeder Befund nennt Regel, Schwere und einen
lesbaren Satz.

Fehler sind Regelverstoesse, keine Geschmacksfragen: Schutzzone
verletzt (rotationsbewusst, alle vier Kanten), zwei Texte ueberdecken
sich, Textabstand unter einem Viertel Zeilenhoehe, Textblock breiter
als die nutzbare Flaeche, mehr als ein Stoerer, und Text auf einem Foto
ohne gruene Flaeche darunter.

Warnungen sind Ermessensfragen: enge Abstaende, mehr als drei Zeilen,
verwaiste Schlusszeile, sehr kleiner Text im Export, konkurrierende
Akzente, Komposition stark aus der Mitte.

Drei bewusste Entscheidungen:

- Alles rechnet aus dem Objektmodell, ohne zweites Rendering. Ein
  Pruefer, der selbst rendert, waere eine zweite Wahrheitsquelle —
  genau das, was diese Schnittstelle vermeiden soll. Das war auch die
  Vorgabe an die Reviewer.
- Wo die drei Reviewer auseinanderlagen, gilt der grosszuegigste
  Schwellwert. Sonst warnt es bei allem und niemand liest es mehr.
- export() prueft selbst und legt das Ergebnis als quality bei, liefert
  das Bild aber trotzdem. Ob eine Ueberlappung von 12 % ein Fehler oder
  Absicht ist, weiss nur der Aufrufer; zu blockieren waere anmassend, zu
  schweigen sinnlos. Mit export({ check: false }) abschaltbar.

Der wichtigste Test ist der unauffaelligste: Ein sauber gebautes Sujet
erzeugt null Befunde. Ein Pruefer, der bei allem anschlaegt, ist so
nutzlos wie einer, der nie anschlaegt.

Schwellwerte aus den drei externen Reviews. VERSION auf 14.
132 Jest, 147 e2e gruen.

Claude-Session: https://claude.ai/code/session_01Qtib9MPRZATQU3j9w7ymDk
@flomotlik
flomotlik merged commit 2c20f3d into main Sep 25, 2026
7 checks passed
@flomotlik
flomotlik deleted the feature/qualitaetspruefung-check branch September 25, 2026 19:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant