Jede Änderung mit Datum. Ohne dieses Protokoll lässt sich später nicht sagen, welche Massnahme gewirkt hat. Dann ist der Pilot als Referenz wertlos. → fairtransform · Begriffe: Glossar

Regeln:

  • Eintrag vor der Änderung anlegen, nicht danach
  • Eine Zeile je Massnahme. Wenn zwei Wellen am selben Tag laufen, sind es zwei Zeilen. Sonst ist die Wirkung nicht trennbar
  • Nie freitags oder vor Ferien ausrollen, damit ein Fehler am selben Tag auffällt
  • Wird etwas zurückgenommen, kommt eine neue Zeile dazu. Die alte bleibt stehen
  • Zusätzlich in der Search Console eine Anmerkung am Umsetzungstag setzen. Sie erscheint für immer direkt in der Kurve, auch wenn diese Tabelle verlorengeht

Protokoll

Die Regel „eine Welle pro Datum" wurde am 02.09.2026 gebrochen

Alle Phase-1-Wellen gingen auf Wunsch des Owners an einem Morgen live, zwischen 06:45 und 07:46. Dazu kamen am Vortag ein Drupal-Upgrade mit Datenbankwechsel und ein neues Theme, beides ohne Plan im Vault. Folge: Die Wellen von Phase 1 lassen sich untereinander nicht mehr trennen. Für die Messung gilt Phase 1 als ein Bündel „Technik inklusive Upgrade und Theme”. Die Grenze zwischen Phase 1 und Phase 2 bleibt sauber, und nur die zählt für die Kernfrage des Piloten. Wie es dazu kam und was wir daraus machen: fairtransform, Abschnitt „Was wir aus dem Piloten lernen”.

Die Messpause wurde am 05.09.2026 gebrochen, und die Regel «Eintrag vor der Änderung» dazu

Drei Tage nach Phase 1 ging die komplett neu gebaute Website live: Design, alle Artikel-URLs, Titel, Beschreibungen, neue Texte, Formular, Einwilligung, Datenbank. Die Zeilen dazu sind am 08.09.2026 aus den Logs im Repo nachgetragen, nicht vorher angelegt. Für die Messung gilt seit dem 05.09. der ganze Relaunch als ein Bündel gegen den Basiswert vom 01.09. Was das bedeutet: fairtransform, Abschnitt «Messdesign», Vorbehalt 3. Was live ist und was offen: Umsetzung.

Quelle für jede Zeile ist das Log im Repo fairtransform.ch unter docs/log/, je Welle ein Git-Tag deployed/<welle>. Zeiten in MESZ.

DatumWelleWas genau geändert wurdeBetroffene URLsWerQuelle
01.09.2026 12:30–20:00ausserplanmässigDrupal 11.2.8 → 11.4.5 (85 offene Sicherheitshinweise), SQLite → MySQL, /update.php gesperrt, Deploy-Werkzeuge gebaut. Drei Ausfälle, zusammen 2 h 5 minalleAgent, Manuel2026-09-01-upgrade-and-mysql-migration.md
01.09.2026 20:48–23:29ausserplanmässigTheme modernisiert: Bootstrap 4 → 5, Schriften Inter und Source Serif 4 selbst gehostet, Kopfbereich neu. Kein Text geändertalleAgent2026-09-01-theme-modernisation.md
02.09.20260Basiswert eingefroren, Rohdaten gesichert, vier Host-Varianten dokumentiert—Manuelfairtransform
02.09.2026 06:451.htaccess: 301 in einem Sprung auf https://www.fairtransform.ch, HSTS 300 salleAgent…welle-1.md, Tag deployed/welle-1
02.09.2026 06:521-hstsHSTS auf ein Jahr erhöhtalleAgentTag deployed/welle-1-hsts
02.09.2026 07:001brobots.txt: fünf Trainings-Crawler per Disallow, zwei Sitemap:-Zeilen. PerplexityBot bleibt serverseitig gesperrt, das löst nur der Hoster/robots.txtAgent…welle-1b.md
02.09.2026 07:10abgleichVier Konfigurationsdateien mit der Produktion abgeglichen, keine sichtbare Änderung—AgentTag deployed/abgleich
02.09.2026 07:20 / 07:342Modul fairtransform_seo aktiv · Sitemap DE 109 / EN 106 URLs · /node/95 und Admin-URLs raus, /de/blog und /en/blog rein · Redirect books-and-medias → /books-and-media. Abweichung vom Plan: Taxonomie-Seiten bleiben indexierbar, mit dem Owner entschiedenSitemaps, /node/95Agent…welle-2.md
02.09.2026 07:373aMetatag-Muster je Sprache und Inhaltstyp: Titel mit Markenzusatz, Beschreibung aus dem Anrisstext. Drei Handtext-Seiten ausgespartrund 200Agent…welle-3a.md
02.09.2026 07:414Article repariert (@id, headline, Daten, author, image, publisher) · Person, Organization, Book mit vier sameAs · Byline d.haller → „Daniel Haller”. Ohne die geplante Bestätigung des Vaters ausgerolltalle Artikel, /de/klar-zur-wendeAgent…welle-4.md
02.09.2026 07:44 / 07:466a, 6a-2x-default bei hreflang · ein h1 je Seite · Logo als WebP · Modul robotstxt deinstalliert und Dateien entferntalleAgent…welle-6a.md
02.09.2026 07:582, NachtragSitemap-Stylesheet repariert, /de/sitemap.xml zeigte im Browser eine leere Seite. Für Crawler ohne FolgeSitemapsAgent…welle-2.md
02.09.2026 08:05–08:22HotfixTeaser- und Hero-Bilder für eingeloggte Redaktoren wieder sichtbar, Folge des Theme-Umbaus. Für Besucher keine Änderung—Agent2026-09-02-hotfix-editor-images.md
02.09.2026 11:38ThemeKonturmuster auf den Hero-Bildern entferntalle Seiten mit HeroAgent2026-09-02-hero-motif.md
02.09.2026 13:10–15:41AuditMängelliste: 64 Befunde, nichts geändert. Nur lesend—Agent2026-09-02-maengelliste-audit.md
02.09.2026 12:05 bis 03.09.2026 22:10KlickdummyFünf Gestaltungsrichtungen als Prototyp auf Cloudflare Pages, noindex, nicht auf der Website. Daniel wählt am 03.09. abends «Nordatlantik Klassik»keineAgent, Manuel, Daniel2026-09-02-redesign-clickdummy.md
03.09.2026 21:50EntscheidRegel 1 «keine URL wird geändert» aufgehoben: Artikel und Rubriken ziehen von /blog/ nach /journal/, beide Sprachen—ManuelKlickdummy-Log, Nachtrag 21:50
04.09.2026 00:06–00:24VorbereitungFrischer Datenbankabzug 1:1 (141 Tabellen), Medienabgleich, Backup 786 MB. Nur lesend. Die drei Backups vom 01.09. dabei versehentlich gelöscht—Agent2026-09-03-drupal-11-redesign-spec.md
04.09.2026 00:57 bis 05.09.2026 20:20Redesign, lokalNeubau auf Drupal 11 in der lokalen Kopie: Welle A unsichtbare Grundlagen, B Design, Vorlagen, Views, Formular, Einwilligung, Suche, JSON-LD, C URL-Umzug mit 192 Aliasen und 259 Redirects, D llms.txt, security.txt, Kopfzeilen. Tags redesign/a bis /c. Produktion unberührt—Agent, Manuel (Sichtvergleich, Entscheide)2026-09-04-redesign-overnight-run.md
05.09.2026 10:05–19:20Audit und Inhalt, lokalAudit über 280 URLs, 74 von 100. Fünf Korrekturrunden per Skript: Überschriftenebenen in 92 Artikeln, 60 Alt-Texte, 18 Rubrik-Definitionen, 165 Kernpunkt- und 165 Fragensets, 533 leere Absätze, Datenschutzseite, Beschreibungen, robots.txt heisst GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot und Google-Extended willkommen. Score 94. Produktion unberührt—Agent, Manuel2026-09-05-content-fixes.md
05.09.2026 21:20–22:10CutoverCode (30’437 Dateien), 4 Mediendateien (Hero-Film 38 MB) und die ganze Datenbank (182 Tabellen) auf die Produktion, 57 Altdateien entfernt. Regel «Inhalte fliessen nur nach unten» einmalig ausser Kraft. Geprüft: /de/blog 301 → /de/journal, alle Artikel-URLs 301, Sitemaps je 108 URLs, Feeds, Formular, robots.txt, llms.txt, security.txt, Drift has_changes: false. Tag deployed/redesign-2026-09-05alleAgent, Manuel (zwei Befehle freigegeben)2026-09-05-redesign-cutover.md
08.09.2026KonsolenDomain-Property in der Search Console angelegt, Bing Webmaster Tools eingerichtet, beide Sitemaps mit den neuen Adressen eingereicht. Keine Änderung an der Website—ManuelUmsetzung

Neue Zeilen unten anfügen. Seit dem 05.09.2026 gilt die Messpause wieder: nur Hotfixes und die Konsolen- und DNS-Handgriffe aus Umsetzung, jeder mit Zeile. Redaktionelle Korrekturen durch Daniel sind erlaubt und kommen als externes Ereignis hierher, wenn sie viele Seiten betreffen.

Noch offen zum 08.09.2026: Anmerkungen in der Search Console für den 02.09. und den 05.09. setzen 🧑 · IndexNow anstossen 🧑 · Ticket an iway, jetzt für PerplexityBot, GPTBot und ClaudeBot 🧑 · Lesung der Agententexte 👤.


Messpunkte

Immer am selben Wochentag ablesen, damit die Werte vergleichbar bleiben. Rhythmus: mittwochs, nächster Messpunkt 09.09.2026, Zwischenauswertung zwischen dem 30.09. und dem 28.10.2026.

DatumIndexiertNicht indexiertImpr. 7 TageKlicks 7 TageCTR /enRich ResultsBing indexiertBemerkung
02.09.20264296~49~0.50.22 %0unbekanntBasiswert. Gilt nur für die www-Property. Die drei anderen Host-Varianten sind nicht erfasst

Ab dem 09.09.2026 messen die Punkte den Relaunch vom 05.09. als Ganzes. In den ersten Wochen zählt die Search Console zusätzlich, wie viele der 192 umgezogenen Adressen sie als «Seite mit Weiterleitung» führt. Ein Rückgang der indexierten Seiten in dieser Zeit ist der Umzug, nicht ein Befund.


Assistenten-Prüfung

Dieselben zehn Fragen, monatlich, in ChatGPT, Claude, Perplexity und Google AI Mode. Von Hand im Konsumentenprodukt, zusätzlich per API mit site/assistenten-check.py als reproduzierbare Näherung. Notiert wird: genannt ja/nein, an welcher Stelle, mit welcher Aussage, aus welcher Quelle.

Die zehn Fragen

Thema, Deutsch

  1. Wer schreibt auf Deutsch über Frachtsegelschiffe und Klimaschutz?
  2. Was ist Frachtsegeln und funktioniert es wirtschaftlich?
  3. Welche Blogs berichten über nachhaltige Seefahrt in der Schweiz?
  4. Was sind Billigflaggen und warum sind sie ein Problem?

Thema, Englisch 5. Who writes about sail cargo shipping and the climate crisis? 6. What is the Tres Hombres and who has sailed on it?

Person und Werk 7. Wer ist Daniel Haller, der Autor von „Klar zur Wende”? 8. Welche Bücher gibt es über Segelfrachter und Klimakrise auf Deutsch? 9. Wen kann man für einen Vortrag über Frachtsegeln und Klimaschutz anfragen?

Region 10. Welche Autoren aus Basel schreiben über Nachhaltigkeit und Transformation?

Ergebnisse

DatumGenannt bei …ChatGPTClaudePerplexityGoogle AIBemerkung
02.09.20260 von 6 geprüften————Ausgangswert. Bei sechs Suchanfragen kein einziges Mal genannt, auch nicht bei Markensuche
02.09.2026, 17:050 von 10, per APIKonto ohne Guthaben, kein Ergebnis——Gemini 3.6 Flash mit Google-Suche: 0 von 10Nach Phase 1, gleicher Tag, also kein Messpunkt, sondern die Probe des Skripts site/assistenten-check.py. Name „Daniel Haller” nur dort, wo er in der Frage steht → Werkzeugtest 2026-09

Was die Ausgangsmessung wirklich zeigt

Bei der Markensuche „Daniel Haller Klar zur Wende Segelfrachter” rankt LinkedIn, und das Profil zitiert den Text der Über-Seite fast wörtlich. Der eigene Inhalt rankt, nur auf einer fremden Domain. Das ist kein Inhaltsproblem, sondern ein Entitäts- und Indexierungsproblem.

Erschwerend: Der Name ist durch Namensvettern besetzt, darunter ein US-Filmregisseur mit Wikipedia-Eintrag. Ohne Person-Markup mit sameAs gibt es kein Signal, das die beiden unterscheidet.


Externe Ereignisse

Damit fremde Ursachen nicht uns zugeschrieben werden.

DatumEreignisMögliche Wirkung
seit vor 01.09.2026Hoster iway sperrt PerplexityBot und fünf Trainings-Crawler serverseitig mit 403. Ticket offenPerplexity liest nichts, bis der Hoster handelt. Nicht uns zuschreiben
03.09.2026Daniel wählt die Gestaltungsrichtung «Nordatlantik Klassik», Manuel entscheidet den URL-UmzugAuslöser des Relaunchs
05.09.2026Relaunch: Design, alle Artikel-URLs, Titel, Beschreibungen, neue Texte, Formular, Einwilligung liveGoogle verarbeitet 259 Weiterleitungen. Nach der Hawila-Erfahrung ist ein Einbruch in den ersten vier bis acht Wochen erwartbar. Bis zur Zwischenauswertung nichts daraus schliessen
05.09.2026robots.txt heisst GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot, Google-Extended willkommen. Der Hoster sperrt drei davon weiter serverseitigAssistenten-Nennungen können erst steigen, wenn das iway-Ticket erledigt ist
08.09.2026Otterly-Testphase endet. Danach entscheiden, ob das Abo für die Assistenten-Prüfung bleibtMessreihe in Otterly reisst sonst ab

Was hier hineingehört: Google-Core-, Spam- und Helpful-Content-Updates mit Start- und Enddatum aus dem Search Status Dashboard · neue Blogbeiträge des Vaters (Datum, URL, Sprache) · Serverumzüge und Drupal-Aktualisierungen · Presseerwähnungen, Vorträge, Buchbesprechungen.

Regel: kein Messpunkt innerhalb eines laufenden Google-Rollouts und nicht in den zehn Tagen danach. Fällt eine geplante Zwischenmessung hinein, wird sie verschoben, nicht interpretiert.


Konfigurationsstände

Vor jeder Änderung an Metatag, Schema.org Metatag, Simple XML Sitemap, .htaccess und Twig-Vorlagen: den vorherigen Stand exportieren (drush config:export oder Dateikopie) und versionieren. Bei einem Einbruch ist das der einzige Weg zurück.

Dazu ein vollständiger Crawl als Referenzstand. Geplant war Screaming Frog, gelaufen ist SiteOne am 02.09.2026 nach Phase 1, siehe Werkzeugtest 2026-09. Ein Crawl vor Welle 1 fehlt.

DatumWas gesichertWo abgelegt
01.09.2026Vollbackup: Datenbank und sites/default/files (backup.sh)Repo fairtransform.ch, Ordner backups/, nicht in Git
01.09.2026Erster Konfigurationsexport der Website, 942 ObjekteRepo, config/sync, in Git
02.09.2026Je Welle ein Git-Tag phase1/<welle> vor und deployed/<welle> nach dem AusrollenRepo, Git-Tags
02.09.2026Referenz-Vollcrawl nach Phase 1: 139 Seiten, HTML-Report, Markdown-Export, JSON90_Archiv/projekte/fairtransform/werkzeugtest-2026-09/siteone/
04.09.2026Datenbankabzug 1:1 der alten Produktion und Backup 786 MB. Die drei Backups vom 01.09. (SQLite-Stand vor der Migration) sind dabei verloren gegangenRepo, backups/20260903-222051, db/prod-20260903-221939.sql.gz
05.09.2026Backup 798 MB vor dem Cutover, dazu der Rollback-Abzug der alten Produktionsdatenbank, 141 TabellenRepo, backups/20260905-093002, pull-db.sh --backup-only
05.09.2026Referenz-Crawl des Redesigns: 280 URLs, Kopfzeilen, JSON-LD, Überschriften, Bilder, Links, BefundeRepo, docs/audit/urls.json, content.json, findings.json
05.09.2026Git-Tags redesign/a, /b, /c und deployed/redesign-2026-09-05Repo, Git-Tags
08.09.2026Referenzmessung auf der Produktion, drei Tage nach dem Cutover: check.outrun.at 93 % (A), PageSpeed Insights Desktop 100 · 100 · 96 · 100, mobil 90 · 100 · 96 · 10090_Archiv/projekte/fairtransform/nachmessung-2026-09-08/