Filipe, 30.09.2026: „wenn eine sendung beendet wurde soll alles
automatisch verschwinden. also von daten die da stehen von dem video."
Und: „mach dass ich die chat kiste immer sehe bitte und nicht erst
wenn das video läuft."
=====================================================================
1. BEENDET HEISST LEER
=====================================================================
Beim Beenden verschwinden Titel, YouTube-Adresse, Videotitel,
Vorschaubild, Beginn und das zweite Video samt seiner Stelle. Vorher
blieb alles stehen; beim naechsten Aufmachen stand dort der Titel der
letzten Sendung und ein Beginn, der in der Vergangenheit liegt.
ERST DER VERLAUF, DANN DAS LEEREN -- weg vom Schreibtisch heisst
nicht weg aus der Welt. Geprueft: Nach dem Beenden steht die Sendung
weiter in `reaktion_verlauf`, samt Video.
EINE FELDLISTE, NICHT ZWEI. Die Aufzaehlung stand in der
Zuruecksetzen-Route; jetzt brauchen sie zwei Wege. `SENDUNGS_FELDER`
und `PULT_EINSTELLUNGEN` stehen einmal oben. Zwei Abschriften waeren
die, die beim naechsten Spaltenzuwachs auseinanderlaufen -- genau so
sind am 11.09. drei Spalten mit Inhalt verlorengegangen.
Einstellungen (Bildaufteilung, Kameragroesse, Chatmodus) und die
Warteschlange bleiben -- die raeumt weiter nur „Alles zuruecksetzen"
ab. Wer nur vorbereitet und dann zumacht, behaelt seine Eingaben; das
ist eine Entscheidung und steht als Pruefung fest.
DAS FELD „BEGINN" WURDE NIE GELEERT, nur gefuellt:
`if (lage.beginnt_am && document.activeElement !== …)` -- zwei Fragen
in einer Bedingung, und die zweite beantwortete die erste
stillschweigend mit nein. Das betraf auch den vorhandenen
Zuruecksetzen-Knopf.
=====================================================================
2. DIE CHATKISTE STEHT IMMER
=====================================================================
Sie lag in `#teil-live` und ging mit ihm weg. Im Wartebereich stand
dabei woertlich „Der Chat ist schon offen" -- der Satz stimmte sogar,
der Server laesst dort schreiben (201, geprueft); zu sehen war der
Chat trotzdem nicht.
Die drei Haeute und die Schiene liegen jetzt in einem gemeinsamen
`.raum`: links wechseln die Haeute, rechts steht der Chat. Das Raster
wandert mit nach oben statt sich zu verdoppeln -- zwei
`grid-template-columns` fuer dieselbe Frage waren am 28.09. der
Grund, warum die Regieleiste null Pixel bekam.
Wer nicht schreiben darf, liest den Grund im Feld („Der Saal ist zu").
DER UMBAU HAT DREI DINGE VERSCHOBEN, und die Messung hat sie sofort
gefunden: Kino 0 px hoch, Spendenkarte bei x=1458 ausserhalb des
Bildes, „Kamera aus"-Schild kam nicht an. Eine Ursache: Zwei Regeln
(`grid-row: 2` und `grid-area: kino`) zielten auf die drei Haeute,
weil die frueher unmittelbar im Saal lagen. Gefunden hat das nicht
das Nachdenken, sondern eine Messung der ganzen Kette --
`teil-live 0x0 @1440,742` lag NEBEN dem Raum.
=====================================================================
3. „DER SAAL IST ZU" ERREICHTE NIEMANDEN, DER DARIN SASS
=====================================================================
`stand: "zu"` loescht `reaktion_dabei`, und `melden()` suchte seine
Empfaenger erst danach -- in genau dieser geleerten Liste. Die Seiten
der Zuschauer blieben auf „live" stehen.
`melden(art, daten, wer)` nimmt jetzt eine Empfaengerliste; die
Stand-Route bestimmt sie VOR jeder Aenderung.
UND EINE ZUGESPERRTE SEITE VERSTUMMTE FUER IMMER. War der Saal zu,
hielt `anschliessen()` jeden Takt an -- und Rundrufe bekam sie auch
keine, weil sie in keiner Liste mehr stand. Machte der Host wieder
auf, passierte bei allen mit offenem Reiter NICHTS. Nicht in dreissig
Sekunden: nie, bis jemand von Hand neu lud. Gemessen: Server sagt
„vorbereitung", die Seite zeigt „zu", auch nach 40 Sekunden.
Jetzt fragt eine geschlossene Seite alle 15 Sekunden nach -- der
ruhigste Zustand des Hauses, dort kostet das nichts.
=====================================================================
4. WER ZULETZT ANTWORTET, HAT NICHT RECHT
=====================================================================
Eine Abfrage ist Sekundenbruchteile unterwegs. Kommt in dieser Zeit
ein Rundruf an, ist SEIN Stand der neuere -- und trotzdem hat die
verspaetete Antwort ihn ueberschrieben.
Gemessen: Die Regie schaltet die Werbung auf Wechsel, der Rundruf
zeichnet ihn, und einen Augenblick spaeter steht wieder Laufband.
Eine feste Wartezeit in der Messung hatte das zugedeckt; es fiel
erst auf, als ich sie durch eine echte Bedingung ersetzte.
Drei Runden Raten lagen daneben. Gefunden hat es eine Mitschrift der
Aufrufkette:
wechsel:2 @ EventSource
laufband:2 @ zeichnen < standHolen < signalEmpfangen
Eine Folgenummer zaehlt jeden angekommenen Rundruf. Jede Abfrage, die
die Seite VON SICH AUS macht -- nach dem Verbindungsaufbau, im
geschlossenen Saal, bei jedem Verbindungssignal, nach einer
abgelehnten Anwesenheitsmeldung, und der Anwesenheitstakt selbst --
verwirft ihr Ergebnis, wenn inzwischen etwas Neueres da war.
Abfragen nach einer EIGENEN Handlung bleiben hart: Sie bringen Dinge
mit, die kein Rundruf traegt (die Verwaltungslisten der Regie). Die
Unterscheidung steht am Aufruf, nicht in einer Bedingung im Inneren.
=====================================================================
5. UND DIE MESSUNGEN WARTEN NICHT MEHR AUF DIE UHR
=====================================================================
Feste Wartezeiten sind dieselbe Falle wie feste Schwellen: Sie
stimmen, bis daneben etwas langsamer wird, und melden dann einen
Fehler, den es nicht gibt. Zweimal ist mir das in einer Stunde
passiert -- einmal beim Band, einmal bei den Ecken. Der Werbeblock
wartet jetzt fuenfmal auf das Ergebnis, der Gleichlauf viermal; laeuft
eine Frist ab, ist es ein echter Befund.
Die erste Fassung der Gleichlauf-Gegenprobe war selbst falsch -- sie
hielt das Selbstheilen des Systems fuer einen Fehler.
Neu in mess-reaktion: „Die Chatkiste in jedem Zustand" (alle drei,
mit Breite und Sperrgrund) und „Beendet heisst leer (im Pult)" -- dort
gemessen, wo Filipe hinsieht, nicht in der Datenbank.
Neu in pruef-reaktion (+14): das Leeren, die Gegenprobe „vorher war
etwas drin", der Verlauf bleibt, und die Entscheidung „wer nur
vorbereitet hat, behaelt seine Eingaben".
Gemessen: mess-reaktion dreimal hintereinander 0/0, pruef-reaktion
407/0, pruef-css-klassen 37/0, pruef-struktur 44/0, pruef-tippziele
13/0, pruef-haus-seiten 38/0, pruef-haus-trennung 100/0, pruef-buehne
38/0, pruef-push-ziel 38/0, mess-buehne 0.
Co-Authored-By: Claude Opus 5 <[email protected]>
123 lines
5.4 KiB
HTML
123 lines
5.4 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>Anfrage · Das Rudel</title>
|
|
<meta name="robots" content="noindex, nofollow" />
|
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
|
<meta name="theme-color" content="#06090f" />
|
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609300235" />
|
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609300235" />
|
|
<link rel="stylesheet" href="assets/css/gate.css?v=202609300235" />
|
|
<link rel="stylesheet" href="assets/css/start.css?v=202609300235" />
|
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609300235" />
|
|
<link rel="stylesheet" href="assets/css/bereich.css?v=202609300235" />
|
|
<link rel="stylesheet" href="assets/css/treff.css?v=202609300235" />
|
|
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202609300235" />
|
|
<link rel="stylesheet" href="assets/css/module.css?v=202609300235" />
|
|
<!-- haus.css MUSS die letzte Stilvorlage sein - siehe treff-regeln.html. -->
|
|
<link rel="stylesheet" href="assets/css/haus.css?v=202609300235" />
|
|
</head>
|
|
|
|
<body class="start">
|
|
|
|
<div class="schleier" aria-hidden="true"></div>
|
|
|
|
<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"><span class="marke__text"><a class="zurueck" href="start.html">Das Rudel</a> · <span id="marke-was">Anfrage</span></span></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">
|
|
|
|
<!-- ==================================================================
|
|
DIE ANFRAGE AUS DER COMMUNITY (17.09.2026)
|
|
|
|
Filipe: „ich will dass die leute sich da anonym bei mir melden
|
|
können und eine anfrage machen können. ich will dass es
|
|
aber profissionel gemacht ist bitte wie ein fragebogen."
|
|
|
|
VERTRAULICH, NICHT NAMENLOS - seine Entscheidung. Es gibt keine
|
|
Selbstanmeldung im Rudel; jeder Zugang kommt von DogFather selbst.
|
|
Eine wirklich namenlose Anfrage wäre also nicht anonymer, sondern
|
|
nur schlechter: Man könnte niemandem antworten, und aus einer
|
|
Anfrage würde nie ein Gespräch.
|
|
|
|
„Anonym" heißt hier deshalb: NIEMAND AUS DER COMMUNITY SIEHT SIE.
|
|
Nicht die anderen Mitglieder, nicht die Modis - nur DogFather und
|
|
die rechte Hand. Und das steht auf dieser Seite, bevor jemand
|
|
anfängt zu tippen, statt im Kleingedruckten darunter.
|
|
============================================================== -->
|
|
|
|
<section class="kopf-zeile">
|
|
<div>
|
|
<p class="marke">Mitmachen</p>
|
|
<!-- DER NAME DER ROLLE STEHT NICHT IN DIESER DATEI.
|
|
|
|
Sie ist ohne Anmeldung aus dem offenen Netz lesbar (gemessen
|
|
am 17.09.2026: jede Datei unter /workspace/ antwortet mit
|
|
200). Der Server schickt das Wort in seiner Antwort mit --
|
|
dieselbe Regel wie bei den Rudel-Regeln und im Chat.
|
|
|
|
Was hier steht, ist die ehrliche Ueberschrift, falls die
|
|
Antwort ausbleibt: eine Anfrage ist es so oder so. -->
|
|
<h1 class="titel" id="titel">Anfrage stellen</h1>
|
|
<p class="unterzeile">
|
|
Ein paar Fragen - ehrlich beantwortet ist mehr wert als
|
|
vollständig. Du kannst zwischendurch aufhören und später
|
|
weitermachen: Deine Antworten bleiben so lange in diesem
|
|
Browser. Zu uns kommen sie erst, wenn du abschickst.
|
|
</p>
|
|
</div>
|
|
</section>
|
|
|
|
<p class="fehler" id="fehler" role="alert" aria-live="polite"></p>
|
|
|
|
<p class="leise" id="ladezeile">einen Moment …</p>
|
|
|
|
<!-- Der Stand, wenn schon eine Anfrage vorliegt (oder eine Sperrfrist
|
|
läuft). Steht ganz oben: Wer hier landet und schon geschickt hat,
|
|
will als Erstes wissen, was daraus wurde - nicht das Formular
|
|
noch einmal sehen. -->
|
|
<section class="bw-stand" id="stand" hidden></section>
|
|
|
|
<form class="bw-bogen" id="bogen" hidden novalidate>
|
|
<div id="gruppen"></div>
|
|
|
|
<!-- WER DAS LIEST, steht direkt über dem Absenden-Knopf und nicht
|
|
nur oben auf der Seite. Wer hier unten ankommt, hat oben zehn
|
|
Minuten hinter sich. -->
|
|
<p class="bw-wer-liest" id="wer-liest"></p>
|
|
|
|
<div class="bw-abschluss">
|
|
<button type="submit" class="knopf" id="abschicken">Anfrage abschicken</button>
|
|
<a class="schritt" href="bereich.html?b=mitmachen">Doch nicht</a>
|
|
</div>
|
|
</form>
|
|
|
|
</main>
|
|
|
|
<!-- Der Fuß gehört zu jeder Seite - siehe pruef-css-klassen. -->
|
|
<script src="assets/js/meldung.js?v=202609300235" defer></script>
|
|
<script src="assets/js/nachfrage.js?v=202609300235" defer></script>
|
|
|
|
<script src="assets/js/wahl.js?v=202609300235" defer></script>
|
|
<script src="assets/js/bereiche.js?v=202609300235" defer></script>
|
|
<script src="assets/js/installieren.js?v=202609300235" defer></script>
|
|
<script src="assets/js/kopf.js?v=202609300235" defer></script>
|
|
<script src="assets/js/glocke.js?v=202609300235" defer></script>
|
|
<script src="assets/js/auskunft.js?v=202609300235" defer></script>
|
|
<script src="assets/js/bewerben.js?v=202609300235" defer></script>
|
|
</body>
|
|
</html>
|