Die zweite Sitzung hat in den Praesentationen des Vaults 83 Stellen
gefunden — und damit auf Loecher in MEINER Wache gezeigt. Ich habe
sie nachgemessen, alle drei waren echt.
LOCH 1 — SIE SAH NUR `server/workspace-*.js`
Also ausgerechnet nicht `workspace.js`, die groesste Datei des
Hauses. Der weitere Filter fand dort sofort drei Stellen:
workspace.js:3404 Kanal „Chat-Moderation" (Protokoll)
workspace.js:3422 „${titel}" -> ${haus} (Protokoll)
workspace.js:3304 „${… || "ohne Titel"}" (siehe Loch 3)
Das ist heute der DRITTE Fall von „die Wache kennt nur die halbe
Menge" — nach pruef-struktur (sah nur die Pruefdateien, nicht die
Anwendung) und pruef-fingermass (sah keine variable Breite).
LOCH 2 — IHR AUSDRUCK GILT JE ZEILE
Ein `„`, das erst in der naechsten Zeile mit einem geraden `"`
schliesst, fiel durch. Gemessen: drei echte Faelle, zwei davon
sichtbarer Seitentext.
workspace/leistung.html „nicht / zugeordnet"
workspace/leistung.html „Backstage-Tabelle / einfuegen"
workspace/assets/js/ampel.js „noch ' + 'verbessern"
Beim letzten laeuft das Zitat ueber eine Zeichenketten-Verkettung.
Neue Regel ohne Fehlalarme: erst alle RICHTIG geschlossenen Paare
entfernen (auch mehrzeilig), dann die einzeilig falschen (die meldet
die alte Regel). Was danach noch ein `„` hat und binnen drei Zeilen
ein gerades `"`, ist ein Fund. Ausgenommen bleibt das Zeichen ALS
WERT — in `content: "„";` und in den Sprachtabellen ist das `„` der
Inhalt und das `"` die Begrenzung.
LOCH 3 — EINE AUSNAHME, DIE EINEN FUND VERSCHLUCKT HAT
Gefunden durch die ZAHL, nicht durch den Blick: Der weitere Filter
liess die Ausnahmen von 12 auf 13 steigen. Die dreizehnte war
`… „${zeile[titelSpalte] || "ohne Titel"}"`
Der Ausdruck blieb am `"` von `"ohne Titel"` haengen; als Inhalt kam
`${zeile[titelSpalte] || ` heraus, das endet auf ein Leerzeichen,
und damit galt „der Satz geht in der naechsten Zeile weiter". Das
echte Schlusszeichen stand hinter dem `}` und war gerade.
Dass die Ausnahmen gezaehlt UND genannt werden, hat ihn gefunden.
Genau dafuer steht die Zeile dort.
Behoben an der Wurzel: Anfuehrungszeichen innerhalb einer Einsetzung
`${…}` werden vorher durch X ersetzt, bei gleicher Laenge und
gleichen Zeilenumbruechen. Das nimmt einer ganzen Sorte
Fehlklassifizierung die Grundlage — die Ausnahmen fielen danach von
13 auf 11.
UND EIN VIERTES, BEIM MESSEN AUFGEFALLEN
`„Van-Van”` in assets/js/data-modis.js schliesst mit U+201D, dem
ENGLISCHEN Zeichen. Zweimal, beide Male in einer DEUTSCHEN Zeile
(`de:` und `"de-CH":`) — nicht einmal eine Uebersetzung, in der es
richtig waere. Eigene Regel dafuer, die keine Ausnahme braucht: Wer
mit `„` oeffnet, schliesst deutsch; in fremdsprachigen Zeilen steht
gar kein `„` am Anfang.
DIE AUSNAHMEZAHL IST JETZT STRENG. Sie stand auf „hoechstens 12" —
damit waere der Anstieg auf 13 nicht aufgefallen. Jetzt genau 11,
wie bei den Grundlinien in pruef-fingermass.
GEPRUEFT: pruef-struktur 68 -> 75 Pruefungen, 0 Fehler. Dazu
leistung-optik 59/0, ampel 47/0, treff 85/0, modi-verborgen 87/0 —
die Seiten, deren Text ich angefasst habe. Steuerzeichen: 830
Dateien, keines. Beide Stempel gesetzt.
Sechs echte Stellen berichtigt, vier neue Gegenproben.
Co-Authored-By: Claude Opus 5 <[email protected]>
Nutzer-Wunsch 20.08.2026: "Ich bin 37 Jahre alt" -> "Ich bin im August 1988
geboren" (und analog in allen 5 Sprachen), Rest des Satzes (verheiratet,
Mutter von zwei Kindern) unveraendert. Betrifft nur bioHtml.de/de-CH/en/
fr/pt in data-modis.js, keine anderen Vorkommen von "37" im Text.
Co-Authored-By: Claude Opus 5 <[email protected]>
- profil.html: h1-Platzhalter "Profil" flackerte vor JS-Ladevorgang ungeuebersetzt
auf (Portugiesisch waere "Perfil" gewesen) -> neuer Key pr_loading in
i18n-profil.js mit allen 5 Sprachen, data-i18n-Attribut ergänzt.
- Manager-Seite: bereits vorbereiteten, vollständig übersetzten "Scout-Manager"-
Button (Link zu team-scouts.html) und die dazugehörige Marina-Kartenänderung
in data-modis.js commitet -- lagen unverändert und konsistent im Arbeitsverzeichnis,
aber nie eingecheckt.
- _check.jpg entfernt: unreferenzierter Screenshot-Rest aus einer alten
Verifikations-Session, wurde bisher unnötig mitdeployed (Regel: keine
Debug-/Test-Dateien im Website-Root).
- team-modis.html: Kartenraster generiert jetzt optional einen zweiten
Button pro Person (m.extraCta in data-modis.js), aktuell nur bei Marina
gesetzt (führt zu manager.html). Card-Markup dafür von <a> auf <div> mit
innerem display:contents-Link umgestellt, damit kein Link im Link
verschachtelt wird (ungültiges HTML). Alle anderen Karten unverändert.
- Neue CSS-Klasse .btn-spicy-mini: kompakter Polarlicht-Button in den
Spicy-Media-Markenfarben (Rot/Orange), gleicher Mechanismus wie
.btn-tiktok/.btn-silver.
- assets/img/avatar-marina.jpg (das KLEINE Foto, z.B. Pyramide-Karte)
durch neues Foto ersetzt und quadratisch zugeschnitten. Das große Foto
(card-marina.jpg) bleibt unverändert, wie gewünscht.
Ersetzt den bisher sehr kurzen bio-Text auf ihrer Profilseite durch die
vollständige Selbstvorstellung (Name, Rolle im Team, Hobbys, Stärken,
persönliche Note, Foto-Hinweis, Signatur), gleiches Muster wie bei
Bananenstift (bioHtml, breiter Lesebereich auf profil.html). Alle 5
Sprachen (de, de-CH als echter Dialekt, en, fr, pt) vollständig übersetzt.
Auf Wunsch: Michi gehört nicht mehr dazu. Entfernt:
- Kompletter Personeneintrag aus data-modis.js (team-modis.html +
profil.html?p=michi zeigen sie dadurch automatisch nicht mehr an).
- Erwähnung in der Team-Hierarchie-Doku, im "von VanVan bis Michi"-
Lead-Text (jetzt "...bis Marina", alle 5 Sprachen) und in Meta-
Beschreibungen/OG-Tags/Twitter-Tags auf team-modis.html.
- Ungenutzte Bilddateien avatar-michi.jpg + card-michi.jpg gelöscht.
Bisher waren role/bio/bioHtml/intro/quote in data-scouts.js und
data-modis.js reine deutsche Strings — dadurch blieben z.B. Zitate
("Ein Mann, ein Wort.") und Kurzrollen auch bei gewählter Fremdsprache
Deutsch (siehe Screenshot-Hinweis: team-scouts.html in EN zeigte noch
deutsches Zitat).
- main.js: neuer window.dogiFeld()-Helper löst mehrsprachige Feld-Objekte
{ de, "de-CH", en, fr, pt } auf (rückwärtskompatibel zu reinen Strings).
- data-scouts.js: role (Patrick, Bananenstift) + bio (Patrick) + intro/
bioHtml/quote (Bananenstift) vollständig in allen 5 Sprachen.
- data-modis.js: role (alle 7) + bio (VanVan/Funny/Marina/Michi) +
bioHtml (Diene/Miss/Ghost) + rankLabel (Ghost) vollständig in allen
5 Sprachen. Lange bioHtml-Texte von unabhängigen Übersetzer-Agenten
erstellt, idiomatisch statt wörtlich.
- team-scouts.html, team-modis.html, index.html (Team-Vorschau),
profil.html: Rendering nutzt jetzt durchgängig dogiFeld() und rendert
bei Sprachwechsel (dogi-sprache-geaendert) neu — team-modis.html und
die Team-Vorschau auf index.html haben vorher GAR NICHT auf Sprach-
wechsel reagiert, das ist jetzt behoben. "Stufe"/"Profil ansehen" auf
team-modis.html liefen bisher hart kodiert Deutsch, jetzt über
i18n-team-modis.js.
Kurzer bio-Text durch Miss' vollständigen Vorstellungstext ersetzt, im
selben bioHtml-Format wie bei Ghost: TikTok-Handle @seelen_staub, ihre
Rolle als Cutterin bei DogFathers Clips, Leben abseits von TikTok, Werte
(Ehrlichkeit, Treue, Respekt), Signatur. Social-Link TikTok ergänzt.
- streamer.html: kompletter Inhalt ersetzt durch Dogis ausführliche
persönliche Vorstellung ("Wer ist DogFather? - Mehr als nur ein Name").
Enthält erstmals öffentlich: Filipe, 34, Portugiese, seit Februar 2026
in Luxemburg, Partnerin Franzi. Abschnitte: Der Mensch hinter DogFather,
DogFather als Streamer, Casper, Team Dogi/VanVan, DogFather als Manager
(Scouts Patrick & Bananenstift verlinkt), Was macht DogFather aus,
Schluss-Statement mit Signatur. Schlanke Buttonzeile am Ende erhalten
fuer Navigation (Videos/Galerie/Team Dogi).
- Neue Standing Rule: "DogFather" wird IMMER mit großem F geschrieben
(nicht "Dogfather"). Site-weit korrigiert in 29 Dateien (Anzeige-Text,
Alt-Texte, Meta-Beschreibungen, Kommentare) - technische Bezeichner
(Dateinamen, data-theme-Werte, CSS-Klassen, @dogfather0804-Handle)
bleiben bewusst unangetastet, da alle klein geschrieben sind und somit
von der Ersetzung gar nicht erst betroffen waren.
Bisher sprang die Nummerierung von Stufe 2 (Diene/Funny) direkt auf
Stufe 4 (Miss) - Stufe 3 fehlte komplett, weil profil.html und
team-modis.html beide den rohen "rank"-Wert anzeigen (nicht die intern
für die Pyramiden-Größe berechnete Position). Miss/Marina/Michi/Ghost
jeweils um 1 nach vorne gerückt (3/4/4/5), dadurch sind Anzeige auf der
Team-Übersicht UND auf den einzelnen Profilseiten jetzt konsistent
lückenlos. Ghosts rankLabel "Ghost" -> "Geist" (letzte Stufe).
- data-modis.js: "– eure Diene 🩵" als Signatur ans Ende ihrer
ausführlichen Vorstellung ergänzt
- medien-casper.html: Events-Sektion entfernt (Wunsch Dogi) - nur noch
Fotos + Videos. data-aktionen.js-Script-Include und Meta-Texte
entsprechend bereinigt.
- bewerben.html: die zwei neuen Kampagnen-Poster (Dogfather/Team-Dogi links,
Spicy Media rechts) flankieren jetzt die beiden Bewerbungs-Spalten wie
Kinoplakate, leicht gekippt, farblich passend zur jeweiligen Seite,
blenden nach unten sanft aus. Bewusst als eigene scharfe Bildspalte statt
als verwaschener Hintergrund hinter den Karten, damit beides in voller
Qualität lesbar bleibt. Ab 1080px Breite ausgeblendet (kein Platz mehr).
- creator.html: neues, extra dafür erstelltes "Die Creator"-Breitbild als
Hintergrund, ersetzt den bisher wiederverwendeten Bewerbungs-Platzhalter
- data-modis.js: Funny von Stufe 3 auf Stufe 2 - jetzt gleiche Hierarchie-
Ebene wie Diene (Pyramide gruppiert automatisch per Stufe, keine
Code-Änderung an der Anzeige-Logik nötig)
- Alle Bilder als optimierte JPEGs eingebunden (PNG-Originale via
System.Drawing skaliert/komprimiert, 63-232 KB statt 1,9-2,6 MB)
- Ghost (Modi-Profil): ausführliche neue Selbstvorstellung "Vom stillen
Zuhörer zum festen Teil der Familie" ersetzt die bisherige Kurzversion
- casper.html: neuer Abschnitt mit Caspers eigener Vorstellung aus seiner
Perspektive ("Ein Husky mit dem größten Herzen der Welt")
- Funny: Rolle unter dem Bild jetzt "Mama der Community" statt "Modi"
- Alle Profilkarten (Modis, Scouts, Creator) haben jetzt einen festen
lila Avatar-Ring statt der zufaellig rotierenden Farben -- Dogi
gefiel, wie Michis zufaellig lila wurde
- Scout-Team: Patrick und Bananenstift zeigen jetzt "Scout (Manager) —
Linke Hand" statt "Scout — Team Dogi"
- Neues Feld bioHtml (neben dem bisherigen kurzen bio) in allen drei
Datendateien (Modis/Scouts/Creator): fuer ausfuehrliche, formatierte
Vorstellungen mit mehreren Absaetzen und Zwischenueberschriften.
profil.html rendert bioHtml jetzt in einem eigenen, breiteren Lese-
bereich unterhalb des kurzen Steckbriefs -- funktioniert fuer jede
Person auf der Seite, nicht nur als Einzelfall
- Diene: komplette eigene Vorstellung eingetragen (bioHtml) + TikTok-
Handle @_ditschi als Social-Link ergaenzt
Co-Authored-By: Claude Opus 5 <[email protected]>
Neues optionales Feld rankLabel ueberschreibt nur die ANZEIGE der Stufe,
die Sortierung laeuft weiter ueber rank. Wirkt auf team-modis.html und
profil.html.
Co-Authored-By: Claude Opus 5 <[email protected]>
Wunsch: Klick auf eine Person (z.B. Bananenstift) oeffnet eine eigene
Seite mit grossem Foto und Vorstellungstext daneben - fuer jeden.
- Neue Seite profil.html: generische Profilseite, liest Person per
?p=<slug> aus MODIS/SCOUTS/CREATORS, zeigt grosses Foto (4:5, farbiger
Rahmen passend zur Person), Name, Rolle, Vorstellungstext, optional
Zitat und Social-Links. Welt/Theme (blau=Team Dogi, rot=Agentur) und
Hintergrundmotiv passen sich automatisch an, ob die Person Modi,
Scout oder Creator ist. Unbekannter Slug zeigt eine freundliche
Fehlermeldung statt kaputter Seite.
- data-modis.js, data-scouts.js, data-creator.js: neues Feld "slug"
(eindeutige ID fuer die URL) und "bio" (Vorstellungstext) fuer jede
Person ergaenzt. VanVan behaelt ihre eigene, ausfuehrlichere Seite
(vanvan.html) und wird nicht auf profil.html umgeleitet.
- team-modis.html, team-scouts.html, creator.html, index.html
(Team-Vorschau): Karten sind jetzt komplett anklickbar (ganze Karte
ist ein Link), nicht mehr nur ein kleiner Knopf.
- Bugfix: gerade curly quotes ("„...\"") mitten in einem doppelt
angefuehrten JS-String schlossen den String vorzeitig ab und haetten
main.js kaputt gemacht (per node --check gefunden, bevor es live ging).
Co-Authored-By: Claude Opus 5 <[email protected]>
Bilder:
- Neues Hintergrund-System (.page-bg): jede Seite setzt ihr Motiv ueber
zwei CSS-Variablen, inkl. eigenem Hochformat-Zuschnitt fuers Handy und
Abdunkelung fuer Textlesbarkeit
- Hintergruende: Casper, Dogfather, Modi-Team, Scouts, VanVan, Bewerben,
Manager, Streamplan, Zeitreise, Stimmen, Community, Werte, Creator
- Bewerbungsseite wechselt den Hintergrund mit dem gewaehlten Reiter
- Neue Hauptfotos auf der Casper- und der Dogfather-Seite
- Stream-Highlight-Bild auf der Streamer-Seite
- Funny (Team-Tili-Dog-Abzeichen) und Ghost jetzt mit Bild
Inhalt:
- Scout-Beschreibung: "Sie finden und begleiten neue Talente fuer Dogi."
- Alle Angaben zu Beteiligungen/Verdiensten der Scouts von der Website
entfernt — interne Vereinbarungen gehen die Oeffentlichkeit nichts an
Co-Authored-By: Claude Opus 5 <[email protected]>
Musik:
- Echte Spotify-Player statt nur Links — Hasidog und Van-Van lassen sich
jetzt direkt auf der Seite abspielen, ohne wegzuklicken
- Startseite und Links-Seite: beide Kuenstler; HasiDog-Seite: Hasidog;
VanVan-Seite: Van-Van
- Eigene Player-Optik (music-grid / music-player), lazy geladen
Bilder aus dokumente-Bilder ergaenzt:
- Spicy-Media-Logo ersetzt den Platzhalter auf der Manager-Seite
- Michi: Team-Dogi-Karte + Gesichts-Avatar
- Patrick (Scout): Portrait-Avatar
Co-Authored-By: Claude Opus 5 <[email protected]>
Die runden Avatare zeigten bisher die grossen 1200x1200-Team-Karten mit
Rahmen, Goldschrift, Husky und Hase - bei 96 Pixeln nur Matsch.
- Neue Dateien avatar-*.jpg: sauber zugeschnittene Gesichts-Portraits
(400x400) aus den Karten, jedes Gesicht mittig und erkennbar
- data-modis.js bekommt ein eigenes Feld "avatar"; die grosse Karte
bleibt unter "photo" fuer grosse Darstellungen erhalten
- Avatar groesser (108px), mit Akzent-Ring, Glanz und Hover-Anhebung
- Ohne Foto jetzt nur noch EIN Buchstabe statt zwei (kein "FU" mehr)
- Profilkarten mit Lichtschein hinter dem Avatar und Hover-Effekt
Co-Authored-By: Claude Opus 5 <[email protected]>