Echtes DatenGraf-Logo in der Brücke (v69) - #66
Merged
Conversation
v68 musste sich mit fa-circle-nodes behelfen, weil die Netzwerkrichtlinie datengraf.nozilla.net sperrt und der Repo-Zugriff dieser Sitzung nicht ueber daimpad/datenlotse hinausreicht. Die Rohdatei-Adresse wurde nachgereicht. Das Logo liegt als datengraf-logo.svg im Repo und wird lokal ausgeliefert - ein Hotlink waere ein zweiter externer Aufruf und machte den Test "null externe Requests" rot. Vor dem Uebernehmen geprueft: kein <script>, kein onload, kein foreignObject, keine externe Referenz ausser dem SVG-Namensraum. Runde Fassung wie .hero-logo: die beiden Werkzeuge teilen ihre Bildsprache und sollen nebeneinander als Geschwister lesbar sein. Der Test prueft naturalWidth > 0 statt nur das Markup - ein <img>, dessen Datei fehlt, sieht im DOM voellig korrekt aus. 1 neuer Test (380 gesamt), eine Mutation geprueft. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011QxDJcLg9h8zdL9ZpTTty7
…mehr mit Die CI war rot: Budget um 4 KB gerissen, lokal gruen. Ursache war nicht das Logo aus v69, sondern dass der Test den GoatCounter-Aufruf mitmass - in der CI erreichbar (rund 9 KB), im Entwicklungscontainer von der Netzwerkrichtlinie gesperrt. Derselbe Commit lieferte zwei verschiedene Zahlen, das Urteil hing am Netz statt am Repo. Gefiltert wird beim Zaehlen, ausdruecklich NICHT ueber page.route(): ein Interceptor umgeht den Speicher-Cache, danach laedt logo.svg (106 KB) zweimal - einmal fuer die Topbar, einmal fuer den Hero - und die Messung ist um genau diesen Betrag falsch. Die Grenze selbst bleibt bei 700 KB. Nachgewiesen mit einem eingeschleusten 20-KB-Zaehlskript: exakt diese 20.000 Bytes verschwinden aus der Summe. Zwei verworfene Wege: eine Rundung der Logo-Koordinaten (wie bei logo.svg in v45) brachte nur 2,6 KB und veraenderte die Grafik im Pixelvergleich sichtbar; loading="lazy" allein reicht nicht, weil Chrome unterhalb seiner Schwelle trotzdem vorlaedt. Das Attribut bleibt, es hilft auf langsamen Verbindungen. 380 Tests gruen. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011QxDJcLg9h8zdL9ZpTTty7
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Nachgereicht, was in v68 blockiert war: v68 musste sich mit
fa-circle-nodesbehelfen, weil die Netzwerkrichtliniedatengraf.nozilla.netsperrt und der Repo-Zugriff dieser Sitzung nicht überdaimpad/datenlotsehinausreicht.Lokal, nicht verlinkt
Das Logo liegt als
datengraf-logo.svgim Repo und wird von dort ausgeliefert. Ein Hotlink aufdatengraf.nozilla.netwäre ein zweiter externer Aufruf — der Test „nur der Zähl-Aufruf geht nach außen" würde rot, und die Zusage im Hero und in der Datenschutzerklärung wäre nicht mehr wahr.Vor dem Übernehmen geprüft
Eine fremde SVG-Datei ist ausführbarer Inhalt, wenn man sie inline einbettet. Geprüft und ausgeschlossen: kein
<script>, keinonload/onerror, kein<foreignObject>, kein<a>, keine externe Referenz außer dem SVG-Namensraum. Eingebunden ist sie ohnehin als<img>, das Skripte im SVG gar nicht erst ausführt.Darstellung
Runde Fassung wie
.hero-logostatt der lila Kachel — die beiden Werkzeuge teilen ihre Bildsprache, und nebeneinander sollen sie als Geschwister lesbar sein.Der Test prüft mehr als das Markup
naturalWidth > 0ist der Punkt: ein<img>, dessen Datei fehlt, sieht im DOM völlig korrekt aus — Attribut da, Element sichtbar, Test grün. Nur die Bildgröße verrät, dass nichts geladen wurde.Tests
1 neuer Test, 380 gesamt, alle grün. Eine Mutation geprüft: zurück auf das Schriftzeichen → macht genau den neuen Test rot.
node tools/generate-wissen.js --check→ 9 Seiten aktuell.Ladegewicht-Budget der Startseite weiterhin eingehalten (das SVG bringt 21 KB unkomprimiert mit).
🤖 Generated with Claude Code
https://claude.ai/code/session_011QxDJcLg9h8zdL9ZpTTty7
Generated by Claude Code