From d087d02a63dd0bf33c27013795aa874ef56a6577 Mon Sep 17 00:00:00 2001 From: Dogfather Date: Wed, 30 Sep 2026 11:38:38 +0200 Subject: [PATCH] Seit fuenf Wochen kam keine Aenderung der Website bei einem wiederkehrenden Besucher an MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Gefunden beim Nachgehen des letzten roten Pruefstand-Eintrags. Eine Kette aus drei Funden, und der dritte wiegt am schwersten. ===================================================================== 1. EINE ENDLOSE BEWEGUNG AUF ETWAS UNSICHTBAREM ===================================================================== `pruef-browser` scheiterte in WebKit daran, dass der Anmeldeknopf nie ruhig wurde. Eine der zwei laufenden Bewegungen war: .knopf__laden { opacity: 0; animation: dreh .8s linear infinite; } Dieselbe Suche, ueber ALLE 42 Stilvorlagen beider Haeuser und der Website, fand einen zweiten: An jedem Navigationspunkt der oeffentlichen Seite lief eine elf Sekunden lange Aurora -- unsichtbar bis zum Ueberfahren, auf jeder Seite, fuer immer. Beides faellt niemandem auf: Nichts stuerzt ab, nichts sieht falsch aus. Es kostet nur Rechenzeit und Akku. NEU: `server/pruef-bewegung.mjs` mit sechs Gegenproben -- darunter die wichtigste, dass ein Beispiel IM KOMMENTAR nicht zaehlt (genau diese Falle hat am 29.09. eine andere Pruefung dreimal getroffen). Der Gesamtlauf findet sie von selbst, sie laeuft ab heute Nacht mit. ===================================================================== 2. DIE WEBSITE HATTE KEINEN STEMPLER ===================================================================== Fuer den Workspace gibt es `workspace-stempel.mjs` seit Langem. Die oeffentliche Website hatte nichts -- dort stand ein VON HAND gepflegter Stempel, und der ist gealtert wie jede von Hand gepflegte Liste. NEU: `tools/seiten-stempel.mjs`, 447 Verweise in 35 Seiten. Er kennt beide Schreibweisen (mit und ohne fuehrenden Schraegstrich) UND die, die in einem `style="…url(…)"` stehen -- zwei Hintergrundbilder auf streamplan.html waeren sonst ein Jahr lang die alten geblieben. Dieselbe Luecke gab es im Workspace-Stempler schon einmal, dort bei den App-Symbolen. ===================================================================== 3. UND DESHALB KAM SEIT DEM 27.08. NICHTS MEHR AN ===================================================================== Stempel in allen 35 Seiten: ?v=20260828e (zuletzt 27.08.) Aenderungen an assets/ seither: 6 Commits Der Server dazu: Cache-Control: max-age=31536000, immutable `immutable` heisst: Der Browser fragt nicht einmal nach. Wer die Seite einmal geladen hatte, behielt Stilvorlagen und Skripte bis zu EINEM JAHR. Darunter der Partnercode DOGI10 auf der gepraegten Muenze und der komplette Sprachumbau der Oberflaeche. Sie lagen auf dem Server, sie waren ausgeliefert, und niemand sah sie. Dieselbe Sorte Fehler wie am 09.09. im Workspace („eine Aenderung ist nicht gemacht" -- sie war es, nur unsichtbar) und dieselbe wie bei VanVans Shop: Eine Aenderung ist erst fertig, wenn sie auf der Adresse ankommt, die der Nutzer benutzt. `pruef-zwischenspeicher` fragt jetzt nicht mehr nur, OB ein Stempel dasteht, sondern ob er NEUER ist als die Dateien, auf die er zeigt. Gegenprobe gemacht: eine Datei zwei Stunden in die Zukunft gesetzt -> rot, Zeit zurueck -> gruen. Eine Stunde Nachsicht, damit die Wache nicht bei zwei Minuten anschlaegt und weggeklickt wird. DEPLOY.md hat jetzt einen Schritt 0 mit beiden Stemplern und dem Grund dafuer -- der Befund steht im Wortlaut daneben. Gemessen: pruef-bewegung 9/0, pruef-zwischenspeicher 30/0, pruef-browser 17/0, pruef-css-klassen 37/0, pruef-struktur 44/0, pruef-workspace-umzug 3/0. Co-Authored-By: Claude Opus 5 --- 404.html | 16 +-- DEPLOY.md | 24 ++++ abonnieren.html | 24 ++-- agb.html | 14 +-- aktion-detail.html | 18 +-- assets/css/main.css | 14 ++- bewerben-creator.html | 22 ++-- bewerben-kooperation.html | 22 ++-- bewerben-modi.html | 22 ++-- bewerben-scout.html | 22 ++-- bewerben.html | 24 ++-- casper.html | 30 ++--- community.html | 22 ++-- creator.html | 22 ++-- dogfather.html | 22 ++-- gate.html | 16 +-- hasidog.html | 26 ++-- index.html | 44 +++---- kontakt.html | 16 +-- links.html | 26 ++-- manager.html | 26 ++-- medien-casper.html | 26 ++-- medien-dogfather.html | 28 ++--- medien-hasidog.html | 28 ++--- profil.html | 28 ++--- rabattcodes.html | 22 ++-- server/pruef-bewegung.mjs | 199 ++++++++++++++++++++++++++++++ server/pruef-zwischenspeicher.mjs | 96 ++++++++++++++ stimmen.html | 26 ++-- streamer.html | 28 ++--- streamplan.html | 22 ++-- supporter.html | 22 ++-- team-modis.html | 24 ++-- team-scouts.html | 22 ++-- tools/seiten-stempel.mjs | 124 +++++++++++++++++++ tt-muddi.html | 26 ++-- vanvan.html | 26 ++-- verwaltung.html | 38 +++--- werte.html | 20 +-- workspace/anruf-probe.html | 10 +- workspace/app.webmanifest | 8 +- workspace/aufgaben.html | 38 +++--- workspace/automation.html | 32 ++--- workspace/befinden.html | 34 ++--- workspace/bereich.html | 44 +++---- workspace/bewerben.html | 38 +++--- workspace/bewerbungen.html | 36 +++--- workspace/buehne.html | 6 +- workspace/calls.html | 34 ++--- workspace/chat.html | 40 +++--- workspace/content.html | 34 ++--- workspace/crew-index.html | 12 +- workspace/crew.webmanifest | 8 +- workspace/dateien.html | 34 ++--- workspace/entwicklung.html | 36 +++--- workspace/hilfe.html | 30 ++--- workspace/index.html | 10 +- workspace/kalender.html | 34 ++--- workspace/leistung.html | 32 ++--- workspace/material.html | 32 ++--- workspace/notizen.html | 28 ++--- workspace/personen.html | 32 ++--- workspace/profil.html | 36 +++--- workspace/reaktion.html | 38 +++--- workspace/rechte.html | 34 ++--- workspace/report.html | 36 +++--- workspace/scouting.html | 32 ++--- workspace/start.html | 32 ++--- workspace/startcheck.html | 34 ++--- workspace/steckbrief.html | 36 +++--- workspace/support.html | 28 ++--- workspace/tafel.html | 6 +- workspace/talente.html | 36 +++--- workspace/team.html | 32 ++--- workspace/teamlage.html | 34 ++--- workspace/teilen.html | 30 ++--- workspace/treff-moderation.html | 32 ++--- workspace/treff-regeln.html | 32 ++--- workspace/uebersicht.html | 32 ++--- workspace/unsere-seiten.html | 30 ++--- workspace/unterstuetzen.html | 32 ++--- workspace/werdegang.html | 32 ++--- workspace/willkommen.html | 30 ++--- workspace/wissen.html | 34 ++--- zeitreise.html | 20 +-- 85 files changed, 1546 insertions(+), 1091 deletions(-) create mode 100644 server/pruef-bewegung.mjs create mode 100644 tools/seiten-stempel.mjs diff --git a/404.html b/404.html index 4b1535cd..0f4e4603 100644 --- a/404.html +++ b/404.html @@ -3,8 +3,8 @@ - - + + @@ -19,10 +19,10 @@ Seite nicht gefunden — DOGFATHER UNIVERSE - - - - + + + + @@ -42,7 +42,7 @@ - - + + diff --git a/DEPLOY.md b/DEPLOY.md index 9eae961c..a5d880f9 100644 --- a/DEPLOY.md +++ b/DEPLOY.md @@ -25,6 +25,9 @@ Erkennungsmerkmal im Zweifel: `curl -sI https://dogfather-universe.com/ | grep - ```bash cd ~/Documents/Obelix/DogiHompage +# 0. STEMPELN — sonst kommt die Änderung bei niemandem an (siehe unten) +node tools/workspace-stempel.mjs # wenn workspace/ angefasst wurde +node tools/seiten-stempel.mjs # wenn assets/ angefasst wurde # 1. Änderung committen git add && git commit # 2. In die Ablage schieben (Gitea ist die Quelle der Wahrheit) @@ -33,6 +36,27 @@ git push gitea master:main ssh dogfather-server "cd /home/dogiweb/dogfather-universe && git pull --ff-only origin main" ``` +### ⚠️ Schritt 0 ist kein Beiwerk + +Der Server schickt zu Stilvorlagen, Skripten und Bildern: + +``` +Cache-Control: public, max-age=31536000, immutable +``` + +`immutable` heißt: Der Browser **fragt nicht einmal nach**. Wer die Seite einmal geladen +hat, behält diese Dateien bis zu einem Jahr — oder bis sich ihre Adresse ändert. Genau +dafür hängt der Stempel (`?v=…`) daran. + +**Das ist schon passiert:** Auf der öffentlichen Website stand der Stempel vom 27.08.2026, +während sechs Commits `assets/` geändert hatten — darunter der Partnercode DOGI10 und der +komplette Sprachumbau. Fünf Wochen lang kam keine dieser Änderungen bei einem +wiederkehrenden Besucher an. Sie lagen auf dem Server, sie waren ausgeliefert, und niemand +sah sie. + +`pruef-zwischenspeicher` prüft seit dem 30.09.2026, dass der Stempel **nicht älter ist als +die Dateien, auf die er zeigt** — nicht bloß, dass einer dasteht. + Statische Dateien (HTML/CSS/JS/Bilder) sind damit **sofort** live — der Express-Dienst liefert das Verzeichnis direkt aus, ein Neustart ist dafür **nicht** nötig. diff --git a/abonnieren.html b/abonnieren.html index a8d6ec6a..7610d8a3 100644 --- a/abonnieren.html +++ b/abonnieren.html @@ -5,8 +5,8 @@ DogiCrew 🩵 — DOGFATHER UNIVERSE - - + + @@ -20,10 +20,10 @@ - - - - + + + + - +
-
Dogfather Supporter-Abo
+
Dogfather Supporter-Abo
👑 DogiCrew 🩵

Mehr als ein Abo — deine Unterstützung wird Teil unserer Geschichte

@@ -604,9 +604,9 @@
- - - + + + + diff --git a/aktion-detail.html b/aktion-detail.html index 059204c4..9d81047e 100644 --- a/aktion-detail.html +++ b/aktion-detail.html @@ -5,8 +5,8 @@ Aktion — DOGFATHER UNIVERSE - - + + @@ -20,10 +20,10 @@ - - - - + + + + @@ -52,9 +52,9 @@ - - - + + + - - + + + diff --git a/bewerben-kooperation.html b/bewerben-kooperation.html index d343f77b..3114ea4c 100644 --- a/bewerben-kooperation.html +++ b/bewerben-kooperation.html @@ -8,8 +8,8 @@ Kooperation anfragen — DOGFATHER UNIVERSE - - + + @@ -23,17 +23,17 @@ - - - - + + + + - +
-
+
Manager DogFather — Agentur

Kooperation anfragen

@@ -69,8 +69,8 @@
- - - + + + diff --git a/bewerben-modi.html b/bewerben-modi.html index ba94f769..e0f18da8 100644 --- a/bewerben-modi.html +++ b/bewerben-modi.html @@ -5,8 +5,8 @@ Modi werden — DOGFATHER UNIVERSE - - + + @@ -20,17 +20,17 @@ - - - - + + + + - +
-
+
🩵 Team Dogi — Community

Werde Modi bei Team Dogi

@@ -80,8 +80,8 @@
- - - + + + diff --git a/bewerben-scout.html b/bewerben-scout.html index f5f643be..95581a78 100644 --- a/bewerben-scout.html +++ b/bewerben-scout.html @@ -5,8 +5,8 @@ Scout werden — DOGFATHER UNIVERSE - - + + @@ -20,17 +20,17 @@ - - - - + + + + - +
-
+
Manager DogFather — Agentur

Werde Scout für DogFather

@@ -72,8 +72,8 @@
- - - + + + diff --git a/bewerben.html b/bewerben.html index 3b2aac2f..283f727f 100644 --- a/bewerben.html +++ b/bewerben.html @@ -5,8 +5,8 @@ Bewerben — DOGFATHER UNIVERSE - - + + @@ -20,17 +20,17 @@ - - - - + + + + - +
-
+
Werde Teil vom Team

Community oder Agentur — such dir deinen Weg

@@ -42,7 +42,7 @@
@@ -78,7 +78,7 @@
@@ -86,7 +86,7 @@
- - + + diff --git a/casper.html b/casper.html index ec54aaf4..868fd322 100644 --- a/casper.html +++ b/casper.html @@ -5,8 +5,8 @@ Casper — DOGFATHER UNIVERSE - - + + @@ -20,17 +20,17 @@ - - - - + + + + - +
-
+
Welt 2 — HasiDog

Casper 🐾

@@ -41,7 +41,7 @@
- Casper — Husky im Sonnenuntergang + Casper — Husky im Sonnenuntergang

Wer ist Casper?

@@ -73,10 +73,10 @@

Casper-Galerie

-
Casper
-
Casper
-
DogFather und Casper
-
HasiDog & Casper Buch-Illustration
+
Casper
+
Casper
+
DogFather und Casper
+
HasiDog & Casper Buch-Illustration
Zur ganzen Galerie @@ -86,7 +86,7 @@
- - + + diff --git a/community.html b/community.html index e85c0593..f0c515d6 100644 --- a/community.html +++ b/community.html @@ -5,8 +5,8 @@ Die Community — DOGFATHER UNIVERSE - - + + @@ -20,17 +20,17 @@ - - - - + + + + - +
-
+
Welt 2 — HasiDog

Die Community

@@ -47,7 +47,7 @@ Discord beitreten
- Diene, Ghost, VanVan und Dogi bei einem gemeinsamen Treffen von Team Dogi + Diene, Ghost, VanVan und Dogi bei einem gemeinsamen Treffen von Team Dogi
@@ -85,7 +85,7 @@
- - + + diff --git a/creator.html b/creator.html index fd1fe262..10b42a84 100644 --- a/creator.html +++ b/creator.html @@ -5,8 +5,8 @@ Creator im Team — DOGFATHER UNIVERSE - - + + @@ -20,17 +20,17 @@ - - - - + + + + - +
-
+
Manager DogFather — Team

Creator im Team

@@ -61,9 +61,9 @@
- - - + + + - + + diff --git a/gate.html b/gate.html index a7397eb1..5334fd4c 100644 --- a/gate.html +++ b/gate.html @@ -5,7 +5,7 @@ Zugang — DOGFATHER UNIVERSE - + - + - - + + - +
-
+
🩵 Alle Links

Alles an einem Ort

@@ -165,15 +165,15 @@

QR-Codes

- QR-Code Instagram @sf0118 + QR-Code Instagram @sf0118

Instagram

- QR-Code Snapchat dogfather0804 + QR-Code Snapchat dogfather0804

Snapchat

- QR-Code Dogis persönlicher Teilen-Baustein + QR-Code Dogis persönlicher Teilen-Baustein

Dogis persönlicher Teilen-Baustein

@@ -183,8 +183,8 @@
- - + + - - + + + - - - - + + + + + diff --git a/medien-dogfather.html b/medien-dogfather.html index e508566b..f9ec4b57 100644 --- a/medien-dogfather.html +++ b/medien-dogfather.html @@ -5,8 +5,8 @@ Medien — DogFather — DOGFATHER UNIVERSE - - + + @@ -20,17 +20,17 @@ - - - - + + + + - +
-
+
Welt 1 — DogFather

Medien — DogFather

@@ -66,11 +66,11 @@
- - - - - - + + + + + + diff --git a/medien-hasidog.html b/medien-hasidog.html index 4dbba76a..a9728d49 100644 --- a/medien-hasidog.html +++ b/medien-hasidog.html @@ -5,8 +5,8 @@ Medien — HasiDog — DOGFATHER UNIVERSE - - + + @@ -20,17 +20,17 @@ - - - - + + + + - +
-
+
Welt 2 — HasiDog

Medien — HasiDog

@@ -66,11 +66,11 @@
- - - - - - + + + + + + diff --git a/profil.html b/profil.html index 9949744b..ab7abb60 100644 --- a/profil.html +++ b/profil.html @@ -5,8 +5,8 @@ Profil — DOGFATHER UNIVERSE - - + + @@ -17,10 +17,10 @@ - - - - + + + + - +
-
+
🔒 Nur mit Konto

Rabattcodes

@@ -420,7 +420,7 @@
- Logo von Van’s DIY & Bastelbedarf @@ -475,8 +475,8 @@
- - + + - - - - + + + + + diff --git a/streamer.html b/streamer.html index d8eb6515..05bd6869 100644 --- a/streamer.html +++ b/streamer.html @@ -5,8 +5,8 @@ Wer ist DogFather? — DOGFATHER UNIVERSE - - + + @@ -20,17 +20,17 @@ - - - - + + + + - +
-
+
Welt 1 — DogFather

Wer ist DogFather? – Mehr als nur ein Name 🩵

@@ -55,7 +55,7 @@

Doch DogFather ist nicht einfach nur ein Name im Internet. DogFather ist ein Teil von mir.

- Filipe alias DogFather + Filipe alias DogFather
@@ -100,7 +100,7 @@ (siehe .collage-photo-kompakt in main.css, jetzt 720px statt 460px), der sich an der typischen Höhe der Textspalte in diesem Abschnitt orientiert. -->
- DogFather Maskottchen + DogFather Maskottchen

🐺 Casper – mein treuer Begleiter

@@ -161,7 +161,7 @@

Ein Mensch, der gerne lacht, andere unterhält und manchmal vollkommen verrückte Dinge macht – aber niemals vergisst, wie wichtig Menschlichkeit, Respekt und Zusammenhalt sind.

- DogFather + DogFather
@@ -199,7 +199,7 @@ 🌶️ Scout-Manager
- Spicy Media Agency Logo
@@ -218,7 +218,7 @@
- - + + diff --git a/streamplan.html b/streamplan.html index 10ac73f2..fd202586 100644 --- a/streamplan.html +++ b/streamplan.html @@ -5,8 +5,8 @@ Streamplan & Livebereich — DOGFATHER UNIVERSE - - + + @@ -20,17 +20,17 @@ - - - - + + + + - +
-
+
Welt 1 — DogFather

Streamplan & Livebereich

@@ -127,8 +127,8 @@
- - - + + + diff --git a/supporter.html b/supporter.html index d310645f..3cf4a09d 100644 --- a/supporter.html +++ b/supporter.html @@ -5,15 +5,15 @@ Mein Supporter-Bereich — DOGFATHER UNIVERSE - - + + - - - - + + + + - +
-
Dogfather Supporter-Abo
+
Dogfather Supporter-Abo
👑 Supporter-Bereich

Dein Supporter-Bereich

@@ -516,9 +516,9 @@
- - - + + + - - + + + - - + + + - + + diff --git a/vanvan.html b/vanvan.html index 8cd994ab..b1d5ff65 100644 --- a/vanvan.html +++ b/vanvan.html @@ -5,8 +5,8 @@ VanVan — die rechte Hand von Dogi — DOGFATHER UNIVERSE - - + + @@ -20,10 +20,10 @@ - - - - + + + + - +
-
+
🩵 Exklusive Seite

VanVan – die rechte Hand von Dogi 🩵

@@ -51,7 +51,7 @@
- VanVan + VanVan

Wer ich bin

@@ -96,7 +96,7 @@
- VanVan + VanVan

Meine Stärken

@@ -146,7 +146,7 @@

Sondern weil ich es von Herzen möchte.

- VanVan + VanVan
@@ -182,7 +182,7 @@
- - + + diff --git a/verwaltung.html b/verwaltung.html index 8baa1948..37dc2d32 100644 --- a/verwaltung.html +++ b/verwaltung.html @@ -6,7 +6,7 @@ Verwaltung — DOGFATHER UNIVERSE - + - + - - - - + + + +