--- screen1: die sieben Zahlen fuehren zu ihren Aufgaben ---
"wenn ich auf die druecke soll ich auf zu denen punkten gebracht
werden."
Der Weg dahin gab es laengst: `aufgaben.html?zeigen=<schluessel>`
springt zu den passenden Karten und legt eine Zeile darueber, was
gezeigt wird. Nur waren die sieben Karten `<li>` ohne Link -- die
Auskunft war da, der Weg dorthin nicht.
Zwei Schluessel fehlten und sind nachgetragen: "heute" (die Karten
tragen dafuer jetzt `data-heute`, denn "heute faellig" ist ein eigener
Zustand und kein Sonderfall von "ueberfaellig") und "abgebrochen" --
das klappt zusaetzlich den Kasten auf, in dem die Abgebrochenen
stehen. Ein Sprung in einen zugeklappten Kasten laesst einen glauben,
der Knopf sei kaputt.
EIN <a> IM <li>, NICHT DAS <li> KLICKBAR: Ein Listenpunkt mit einem
Klick-Zuhoerer ist fuer Tastatur und Vorleseprogramm kein Ziel. Die
Trefferflaeche wird ueber ein durchsichtiges `::after` auf die ganze
Kachel gestreckt -- im ersten Anlauf stand dort `padding: inherit`,
was die 14/16 der Kachel ein zweites Mal aufgetragen und sie siebenmal
um 28 px verbreitert haette.
DIE NULL BLEIBT EIN LINK. Der Sprung zeigt dann eine leere Spalte mit
der Zeile "Aufgaben, die offen sind" -- das ist eine Antwort. Ein
toter Knopf ist keine.
--- screen2: die Kategorietitel werden Typenschilder ---
"die titel von den kategorien sollen spezieller und geiler sein."
Fase statt Rundung (die Pille war das einzige Rund auf einer Seite aus
abgeschraegten Platten), ein gepraegter Anschlag aus drei Kerben
statt eines Strichs, gebuerstetes Metall in der Schrift und eine
auslaufende Linie nach rechts.
UND DABEI EIN FUND: Der "leuchtende Strich" vor "Was ist dran" und
"Deine Aufgaben" wurde NIE GEZEICHNET. `.zahlen-block .feldschild`
setzt `display: flex`, damit das Pseudoelement eine Box bekommt --
rund 1200 Zeilen spaeter steht `.inhalt .feldschild { display: block }`
mit derselben Spezifitaet, und die spaetere gewinnt. Das Schild war
`block`, das Pseudoelement damit `inline`, und ein Inline-Kasten
ignoriert `width` und `height`. Aufgefallen ist es nur, weil mein
neuer Anschlag ebenfalls unsichtbar blieb und die Messung sagte: Der
Text beginnt bei x=12, also genau an der Polsterung -- davor belegt
nichts Platz.
Die Gegenprobe hat mich dabei vor einer falschen Reparatur bewahrt:
Ich hatte den Textverlauf (`background-clip: text`) im Verdacht.
Einmal mit und einmal ohne gemessen -- in beiden Faellen x=12. Damit
war die Ursache ausgeschlossen, bevor ich an der falschen Stelle
gearbeitet habe.
--- screen3: DogFather wird Silber, der Husky wird das echte Logo ---
"dieses husky symbol soll ersetzt werden durch den husky oben in der
leiste. und die farbe von der rolle und die barre soll so richtig geil
silber sein ... und der husky soll eine geile babyblau [Auge] haben."
Damit kehrt die Rolle zu dem zurueck, was im allerersten Auftrag stand
("husky: silber und blaue augen").
DAS ZEICHEN war eine geometrische Eigenkonstruktion -- ein Fuenfeck mit
zwei dreieckigen Ohren. Ordentlich gebaut, aber nicht DER Husky: Oben
in der Leiste steht die richtige Marke, und zwei verschiedene Huskys
auf einer Seite sind einer zu viel. Jetzt das echte Logo als <image>,
eingefaerbt mit `feComponentTransfer` -- eine zweistufige Tabelle
bildet Schwarz auf dunklen Stahl und Weiss auf Silber ab. Ein
`feColorMatrix` koennte das nicht; er mischt nur linear und zoege die
Mitteltoene flach.
DAS AUGE IST GEMESSEN, NICHT GESETZT: Ein Durchlauf ueber die
Bildpunkte hat die Pupille als einzige dunkle Insel gefunden, die
ringsum von Hellem umgeben ist -- bei 165/258 von 512, also 32,2 % und
50,4 %.
DIE ROLLENFARBE NACHGERECHNET, weil Silber gefaehrlich ist: Es hat
kaum Buntheit und koennte neben einer anderen Rolle verschwinden. In
OKLab liegt #d8e0ec 0,1901 von seinem naechsten Nachbarn (Scout)
entfernt -- das bisherige Babyblau lag bei 0,1349. Die fuenf Rollen
sind dadurch BESSER auseinanderzuhalten als vorher. Kontrast 14,41:1.
"wie mit sternen" ist als GLANZ gebaut, nicht als Funkeln: ein
schmales schraeges Spitzlicht und drei winzige Lichtpunkte, alles
still. Ein wanderndes Glitzern auf der Anmeldeseite waere genau das,
was die Hausregel verbietet.
Nebenbei: `rs-silber` faerbte den alten Husky und wird jetzt nirgends
mehr benutzt -- entfernt statt liegengelassen.
--- Aufraeumen ---
`ruf.png` (ein Messbild von mir) war ueber `git add -A` ins Repo und
bis auf den Server gewandert -- die Loeschung kam eine Zeile zu spaet.
Entfernt, und `.gitignore` sperrt jetzt das Praefix `zz-`, das solche
Dateien ab sofort tragen. Eine Regel im Werkzeug ist besser als eine,
an die ich mich erinnern muss.
Geprueft: pruef-rollen (97), pruef-start-ansicht, pruef-css-klassen,
pruef-workspace-seiten -- alle in Ordnung. Dazu die sieben Links und
beide neuen Sprungziele im Browser durchgeklickt.
Co-Authored-By: Claude Opus 5 <[email protected]>
102 lines
3.8 KiB
Plaintext
102 lines
3.8 KiB
Plaintext
.DS_Store
|
|
Thumbs.db
|
|
*.log
|
|
node_modules/
|
|
cloudflare-worker/.wrangler/
|
|
cloudflare-worker/node_modules/
|
|
.wrangler/
|
|
.env
|
|
.env.*
|
|
!.env.example
|
|
server/node_modules/
|
|
|
|
# Sicherungskopien von Bildern (entstehen beim Optimieren, gehoeren nicht
|
|
# ins Verzeichnis). Am 22.08.2026 sind 13 davon versehentlich durch ein
|
|
# "git add -A" mitgewandert -- 2,6 MB, die niemand braucht.
|
|
*.bak-*
|
|
# Lokaler Testserver.
|
|
server/tmp-lokal.mjs
|
|
|
|
# ⚠️ HIER STAND server/package-lock.json (aufgenommen 26.08.2026).
|
|
#
|
|
# Ausgeschlossen wurde sie, weil ein "git pull" auf dem Server damals
|
|
# abbrach: Git weigert sich, eine unverfolgte Datei zu ueberschreiben --
|
|
# unabhaengig davon, ob ihr Inhalt derselbe ist. Der Ausschluss hat den
|
|
# Deploy repariert und dabei den Zweck der Datei beseitigt.
|
|
#
|
|
# Ohne sie darf jede Installation andere Fassungen ziehen: "^4.21.2"
|
|
# erlaubt alles bis unter 5.0. Auf dem Server laeuft deshalb express
|
|
# 4.22.2, waehrend hier 4.21.2 steht -- geprueft wird also nie genau
|
|
# das, was ausgeliefert wird. Faellt so ein Unterschied auf, dann im
|
|
# Betrieb.
|
|
#
|
|
# Nachgemessen: Die Datei hier und die auf dem Server sind Byte fuer
|
|
# Byte identisch (SHA-256 a50b028d…). Es gab also nie einen inhaltlichen
|
|
# Konflikt, nur einen formalen -- und der loest sich, indem die Datei
|
|
# einmal vom Server entfernt und danach aus dem Repo geholt wird.
|
|
bild-*.png
|
|
|
|
# Aufnahmen der Handy-Pruefung (pruef-verwaltung-handy.mjs). Sie
|
|
# entstehen bei jedem Lauf neu und sind Zwischenstand, kein Quelltext --
|
|
# im Repo waeren sie nur Ballast und wuerden bei jedem Lauf als
|
|
# Aenderung erscheinen.
|
|
handy-*.png
|
|
|
|
# Laufprotokolle der Pruefungen -- Ergebnis, kein Quelltext.
|
|
# Ein Muster statt einer Liste: Sonst haette jede neue Pruefung ihre
|
|
# eigene Zeile gebraucht, und die vergisst man. Genau das ist am
|
|
# 05.09.2026 passiert -- vier neue Protokolle standen ploetzlich als
|
|
# Aenderung im Arbeitsstand.
|
|
pruef-*-lauf.txt
|
|
server/pruef-*-lauf.txt
|
|
# Ergebnis des Sammellaufs (tools/alles-pruefen.mjs)
|
|
gesamtlauf.txt
|
|
|
|
# Bilder zum Ansehen (server/bild-*.mjs) -- entstehen bei jedem Lauf neu
|
|
tagesblick-*.png
|
|
chat-*.png
|
|
calls-*.png
|
|
sicht-*.png
|
|
|
|
# ---------------------------------------------------------------------
|
|
# Bilder der Pruefungen (06.09.2026)
|
|
#
|
|
# Die Pruefdateien schreiben Bildschirmfotos, um zeigen zu koennen, was
|
|
# sie gesehen haben -- 62 Stueck, 54 MB, und bei JEDEM Lauf neu. Sie
|
|
# standen bisher im Repo und tauchten dadurch bei jedem Commit als
|
|
# Aenderung auf: Man haette sie mitcommittet oder jedes Mal von Hand
|
|
# aussortiert. Beides ist Ballast.
|
|
#
|
|
# GEPRUEFT VOR DEM ENTFERNEN: Keine einzige Pruefung LIEST je ein Bild
|
|
# (kein readFileSync, kein existsSync auf .png) -- sie werden nur
|
|
# geschrieben und angesehen. Es sind also keine Vergleichsbilder, deren
|
|
# Verlust eine Pruefung blind machen wuerde.
|
|
#
|
|
# NICHT betroffen und bewusst weiter versioniert: alles unter
|
|
# assets/ und workspace/assets/ -- dort liegen die QR-Codes und die
|
|
# Bilder der Website. Beim ersten Anlauf waeren sie um ein Haar
|
|
# mitgegangen, weil ein zu grobes Muster sie eingeschlossen hatte.
|
|
pruef-*.png
|
|
server/pruef-*.png
|
|
abnahme-*.png
|
|
server/abnahme-*.png
|
|
|
|
# Messlaeufe von tools/mess-rueckgabewerte.sh -- Ergebnis eines Laufs,
|
|
# kein Quelltext. Gehoert nicht in die Geschichte.
|
|
rueckgabewerte-*.txt
|
|
|
|
# ---------------------------------------------------------------------
|
|
# WEGWERF-MESSDATEIEN (09.09.2026)
|
|
#
|
|
# Beim Pruefen schreibe ich Bildschirmfotos und kleine Messkripte ins
|
|
# Arbeitsverzeichnis und loesche sie danach. Einmal ist eines davon
|
|
# (`ruf.png`) trotzdem im Repo gelandet und bis auf den Server
|
|
# gewandert -- `git add -A` nimmt alles mit, was zu dem Zeitpunkt da
|
|
# ist, und die Loeschung kam eine Zeile zu spaet.
|
|
#
|
|
# Deshalb tragen solche Dateien ab jetzt das Praefix `zz-`, und git
|
|
# sieht sie gar nicht erst. Eine Regel, die im Werkzeug steht, ist
|
|
# besser als eine, an die ich mich erinnern muss.
|
|
zz-*
|
|
/*.png.tmp
|