Files
dogfather-universe/workspace/willkommen.html
T
DogFatherGitandClaude Opus 5 015ac7738e TikTok liefert die Kampagnenseite nicht mehr aus -- und der Kasten sagt es jetzt
Filipe hat die Kachel benutzt und bekam "Ging nicht." Im Protokoll des
Servers stand der Grund; im Kasten stand er nicht. Beides ist jetzt
behoben -- und beim Nachmessen kam ein groesserer Befund heraus.

DER BEFUND: DIE SEITE KOMMT LEER AN
  Gemessen am 07.10.2026, von zwei Leitungen und auf fuenf Wegen:

    ehrliche Kennung, accept text/html   17 KB, keine Daten
    ehrliche Kennung + Browser-Accept    17 KB, keine Daten
    Browser-Kennung                      17 KB, keine Daten
    Browser-Kennung + Accept + Sprache   17 KB, keine Daten
    ganz ohne eigene Koepfe              17 KB, keine Daten
    zweiter Abruf MIT Keksen             17 KB, keine Daten
    echtes Chromium (headless)           17 KB, LEERE Seite

  Titel "Campaign", leerer Koerper, zwei Skripte (tiktok-environment,
  gfdatav1). Dasselbe fuer Filipes neue Kampagne UND fuer
  "Gipfelstuermer", von meinem Rechner wie vom Server.

  Damit traegt eine Annahme des Bauplans nicht: "HTML 1.100.298
  Zeichen, serverseitig gerendert". Die 1,1-MB-Seiten, an denen der
  Bauplan entwickelt wurde, stammen aus einer echten Browsersitzung.
  Auf einen gewoehnlichen Abruf baut TikTok die Seite nicht mehr auf.

  Ob das voruebergehend ist (Modern.js kann SSR abstufen -- die
  gespeicherten Seiten tragen "renderLevel":2) oder bleibt, laesst
  sich an einem Abend nicht sagen. Der Weg bleibt deshalb eingebaut:
  Kommt die Seite wieder mit Daten, laeuft alles sofort.

WAS DER MENSCH DAVOR JETZT SIEHT
  Der Leser unterscheidet HUELLE von UMBAU. Das sind zwei sehr
  verschiedene Lagen: Bei einem Umbau ist etwas zu reparieren, bei
  einer Huelle kann niemand etwas machen -- und soll das hoeren statt
  zu suchen. Die Meldung sagt die Groesse, sagt "das liegt nicht an
  dir und nicht am Link" und nennt den naechsten Schritt.

  "umgebaut" steht dort ausdruecklich NICHT mehr: Dieser Satz haette
  ihn auf die falsche Suche geschickt.

UND NIE WIEDER "Ging nicht."
  Der Verlust der Meldung liess sich NICHT nachstellen -- 403 und 502
  kommen beide woertlich im Kasten an, jetzt in bild-kampagne
  gemessen (25 Messungen). Ein Ersatztext, der nichts sagt, ist aber
  auch ohne bekannte Ursache falsch: Er laesst raten. Er nennt jetzt
  die Nummer der Antwort und sagt, wo mehr steht.

GEPRUEFT
  pruef-kampagne-lesen 108 -> 112 (Huelle und Umbau getrennt, mit
  Gegenprobe: eine fremde Seite gilt NICHT als Huelle) ·
  pruef-kampagne 99 -> 102 (fuenf verschiedene Saetze fuer fuenf
  Faelle) · bild-kampagne 20 -> 25 (zeigt der Kasten den Grund?) ·
  pruef-struktur, pruef-eventkarte 94, pruef-agentur 62,
  pruef-css-klassen 39, pruef-zeichen 8, pruef-deutsche-texte 12

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-10-07 18:02:02 +02:00

90 lines
3.7 KiB
HTML

<!doctype html>
<html lang="de">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" />
<title>Willkommen &amp; Anleitung · Team Dogi</title>
<meta name="robots" content="noindex, nofollow" />
<!-- ====================================================================
DIESE SEITE IST UMGEZOGEN (06.10.2026)
Bauplan „Willkommen & Anleitung — Einweisung je Rolle", Kapitel 03:
„Adresse: bleibt willkommen.html. Alte Verweise funktionieren
weiter."
Die Einweisung selbst liegt auf `anleitung.html` — dort war sie für
die Agentur schon gebaut, und am 06.10. hat Team Dogi ihre vier
Fassungen dazubekommen. Zwei Seiten mit demselben Zweck
nebeneinander wären zwei Stände, von denen einer irgendwann
veraltet; was hier stand (eine Liste ALLER Bereiche, gleich
behandelt), ist genau das, was Kapitel 01 des Bauplans als Problem
beschreibt.
DREI WEGE, DAMIT KEINER INS LEERE LÄUFT:
1. `http-equiv="refresh"` — wirkt auch ohne JavaScript.
2. `location.replace` — sofort, und OHNE Eintrag im Verlauf:
Sonst landete man beim Zurückgehen wieder hier und würde
erneut weitergeleitet. Eine Falle, aus der man nicht
herauskommt.
3. Ein sichtbarer Verweis — falls beides nicht greift.
Die Suchparameter werden mitgenommen: Wer mit `?schritt=…` kommt,
soll dort landen, wohin er wollte.
==================================================================== -->
<meta http-equiv="refresh" content="0; url=anleitung.html" />
<link rel="canonical" href="anleitung.html" />
<!-- DIE DREI, DIE JEDE SEITE DIESES HAUSES BRAUCHT (07.10.2026).
pruef-struktur hat sie hier vermisst, und das zu Recht -- auch
wenn diese Seite nur einen Wimpernschlag zu sehen ist:
theme-color sonst zeichnet Android die Fensterleiste WEISS,
und wer aus einem alten Lesezeichen kommt,
bekommt einen hellen Balken ueber einer
durchweg dunklen Seite.
manifest sonst oeffnet die Seite auf dem Handy AUSSERHALB
der App -- die Weiterleitung landet dann im
Browser statt im Workspace.
apple-touch-icon sonst nimmt das iPhone einen Bildschirmabzug,
wenn jemand diese alte Adresse auf den
Startbildschirm legt.
Drei Zeilen sind hier billiger und haltbarer als eine Ausnahme
in der Pruefung: Eine Ausnahmeliste muesste gepflegt werden und
veraltet beim naechsten Umbau. -->
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610071759" />
<style>
/* Bewusst ohne eigenes Stilblatt: Die Seite ist in aller Regel nur
einen Wimpernschlag zu sehen. Ein Stilblatt nachzuladen hiesse,
die Weiterleitung dafuer warten zu lassen. */
body {
margin: 0; min-height: 100svh;
display: grid; place-items: center;
background: #06090f; color: #e8f1fa;
font: 1rem/1.6 system-ui, -apple-system, "Segoe UI", sans-serif;
padding: 24px; text-align: center;
}
a { color: #8ec9ff; min-height: 44px; display: inline-block; padding: 10px 4px; }
</style>
</head>
<body>
<p>
Diese Seite heißt jetzt <strong>Willkommen &amp; Anleitung</strong>.<br />
<a href="anleitung.html" id="weiter">Hier geht es weiter</a>
</p>
<script>
(() => {
const ziel = 'anleitung.html' + (location.search || '');
document.getElementById('weiter').href = ziel;
location.replace(ziel);
})();
</script>
</body>
</html>