Filipe sah die neue Kachel nicht, obwohl sie live war. Ursache gemessen, nicht vermutet: Node liefert : Cache-Control: no-cache (richtig) Cloudflare macht: Cache-Control: max-age=14400 (ueberschreibt es) cf-cache-status: REVALIDATED, Server: cloudflare Cloudflares voreingestellte Browser-Cache-Zeit von vier Stunden setzt sich ueber das no-cache des Servers hinweg -- aber NUR bei JS und CSS. HTML kommt mit DYNAMIC und no-cache immer frisch durch (geprueft an /creator.html und /workspace/). Genau deshalb genuegt ein Stempel in der HTML: neue Seite -> neue Adresse -> Cloudflare kennt sie nicht -> frische Datei. Keine Cloudflare-Einstellung noetig, nichts, worauf ich warten muss. tools/workspace-stempel.mjs setzt den Stempel auf alle 71 Verweise in 13 Dateien. Der Lauf ist wiederholbar: ein vorhandener Stempel wird ersetzt, nicht angehaengt (geprueft). Gehoert ab jetzt vor jeden Deploy, der JS oder CSS im Workspace anfasst. Ich verlasse mich damit nicht mehr aufs Erinnern -- das war der eigentliche Fehler. Co-Authored-By: Claude Opus 5 <[email protected]>
72 lines
2.5 KiB
HTML
72 lines
2.5 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>Start-Check · Creator Workspace</title>
|
||
<meta name="robots" content="noindex, nofollow" />
|
||
<meta name="theme-color" content="#05070d" />
|
||
<link rel="icon" href="assets/img/favicon.png" />
|
||
<link rel="stylesheet" href="assets/css/gate.css?v=202608281303" />
|
||
<link rel="stylesheet" href="assets/css/start.css?v=202608281303" />
|
||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608281303" />
|
||
<link rel="stylesheet" href="assets/css/startcheck.css?v=202608281303" />
|
||
</head>
|
||
|
||
<body class="start">
|
||
|
||
<header class="kopfleiste">
|
||
<button type="button" class="zurueck-knopf" id="zurueck" hidden>
|
||
<svg class="zurueck-knopf__pfeil" viewBox="0 0 24 24" aria-hidden="true">
|
||
<path d="M14.5 5.5 8 12l6.5 6.5" />
|
||
</svg>
|
||
<span class="zurueck-knopf__text">Zurück</span>
|
||
</button>
|
||
<p class="marke"><a class="zurueck" href="start.html">Creator Workspace</a> · Start-Check</p>
|
||
<div class="kopfleiste__rechts">
|
||
<span class="wer" id="wer">…</span>
|
||
<button type="button" class="abmelden" id="abmelden">Abmelden</button>
|
||
</div>
|
||
</header>
|
||
|
||
<main class="inhalt inhalt--breit">
|
||
|
||
<section class="kopf-zeile">
|
||
<div>
|
||
<p class="marke">Onboarding · Erstanalyse</p>
|
||
<h1 class="titel">Start-Check</h1>
|
||
<p class="unterzeile" id="unterzeile">
|
||
Ausgangslage verstehen – und daraus konkrete Arbeitspakete bauen.
|
||
</p>
|
||
</div>
|
||
<div class="steuerung">
|
||
<div id="creator-block" hidden>
|
||
<label class="feld-schild" for="f-creator">Creator</label>
|
||
<select id="f-creator"></select>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<p class="fehler" id="fehler" role="alert" aria-live="polite"></p>
|
||
|
||
<section class="fortschritt" id="fortschritt" hidden>
|
||
<div class="fortschritt__kopf">
|
||
<span class="fortschritt__zahl" id="f-zahl">0 von 16</span>
|
||
<span class="fortschritt__text" id="f-text">Punkten geprüft</span>
|
||
</div>
|
||
<div class="fortschritt__balken" role="progressbar" aria-valuemin="0" aria-valuemax="16"
|
||
aria-valuenow="0" id="f-balken-aussen">
|
||
<div class="fortschritt__fuellung" id="f-balken"></div>
|
||
</div>
|
||
<p class="fortschritt__hinweis" id="f-hinweis"></p>
|
||
</section>
|
||
|
||
<div id="felder" aria-busy="true"><p class="leise">Start-Check wird geladen …</p></div>
|
||
|
||
</main>
|
||
|
||
<script src="assets/js/kopf.js?v=202608281303" defer></script>
|
||
<script src="assets/js/startcheck.js?v=202608281303" defer></script>
|
||
</body>
|
||
</html>
|