SPEC-GENERATOR · Vorab-Festlegungen
Glossar

Alle Felder außer dem Projektnamen sind optional — Offen ist erlaubt. Unbeantwortete Punkte wandern als OFFEN in beide Dokumente und werden im neuen Chat geklärt. Beim Generieren entstehen Project-Brief.md und PRD.md als Codebox und Download. Keine Datenübertragung — alles läuft lokal im Browser.

§1

Identität

Projekttyp
§2

Stack

Fremd-CMS einsetzen?
Programmiersprachen
Datenbank
Rendering
Agent-Interaktionsschicht wie pflegt der Agent Content/Config? → Messdimension Roadmap §0.4
§3

Features

User-Login / Memberbereich
Shop / Bezahlfunktion
E-Formulare
Suche
Inhaltsmodule
§4

UI / UX

Farbmodus
Responsive-Umfang
Design-Charakter
Barrierefreiheit
§5

Mehrsprachigkeit

Multilingual?
§6

Recht & DSGVO

Baseline Roadmap §0.1 — Abwahl ist eine bewusste Entscheidung
Analytics
Consent-Banner nötig?
§7

Qualität & Messung

Observable Gates → PRD-Verifikationsliste + /goal-Bedingung
Quality-Observation-Tracking Messprotokoll Roadmap §0.4
§8

Forschung

Forschungskomponente
§9

Betrieb

Betriebsmodell
Provider
Betriebsmuster
RAM-Klasse Roadmap §0.3
§10

Umfang & Lauf

Zeitbudget
Content
Lauf-Caps
Turn-Cap · Token-Ceiling für die /goal-Bedingung
§G

Glossar (Concept Cards)

Format pro Begriff: Was es ist · Wozu · Nicht zu verwechseln mit (sofern relevant) · Namensherkunft (sofern relevant) · Mehr dazu. Gruppierung folgt den Formular-Sektionen. Vorbild: Glossar des SQ-Kriterienkatalogs.

Dokumente & Methode

Spec / Spec-Set

Was es ist: Der Satz von Steuer-Dokumenten, der einem autonomen Coding-Agenten Auftrag, Arbeitsregeln, Perimeter und Prüfkriterien vorgibt.

Wozu: Der Agent arbeitet gegen Dateien statt gegen Zurufe — reproduzierbar, reviewbar, versionierbar.

Mehr dazu: Sieben-Datei-Topologie, Phase-3-Runbook.

Sieben-Datei-Topologie

Was es ist: Verbindliches Skelett jedes Prototyps: CLAUDE.md, .claude/settings.json, docs/PRD.md, quality.md, TASKS.md, ADR.md, GOAL-PROMPT.md.

Wozu: Jedes Projekt ist selbsttragend — nichts wird stillschweigend projektübergreifend geteilt.

Mehr dazu: Phase-3-Runbook §P3.2.

Project Brief

Was es ist: Kompaktes Übergabedokument mit allen Vorab-Festlegungen plus dem Auftrag an den neuen Chat (welche Spec-Dateien nach welchen Konventionen).

Wozu: Ein frischer Chat ohne Projektgedächtnis kann sofort das Spec-Set schreiben.

Nicht zu verwechseln mit: PRD — der Brief regelt den Prozess, die PRD das Produkt.

PRD

Was es ist: Der Output-Vertrag eines Projekts: was gebaut wird, plus die observable Verifikationsliste (Gate-Liste).

Wozu: Die /goal-Bedingung zeigt auf genau diese Liste — die PRD ist die ausführbare Wahrheit.

Namensherkunft: Product Requirements Document — klassischer Produktmanagement-Begriff.

CLAUDE.md

Was es ist: Das stehende Arbeitsabkommen eines Projekts; Claude Code lädt es bei jedem Session-Start automatisch.

Wozu: Sprache, nicht verhandelbare Constraints, stehende Regeln (ADR-Pflicht, Doku-Abschluss) — immer aktiv.

Nicht zu verwechseln mit: PRD (regelt das Was; CLAUDE.md regelt das Wie hier gearbeitet wird).

ADR

Was es ist: Kurzer, nummerierter Eintrag pro Architektur-Entscheidung: Kontext → Entscheidung → Konsequenzen.

Wozu: Audit-Trail — warum es so gebaut ist, nachlesbar statt rekonstruierbar.

Namensherkunft: Architecture Decision Record (Michael Nygard, 2011).

PADR

Was es ist: ADR-Format für Policy- und Prozess-Entscheidungen statt Technik — Regeln, Grenzen, Betriebs-Politik (Beispiel: append-only als Policy vs. Enforcement).

Wozu: Auch Regel-Entscheidungen brauchen Kontext und Begründung im Repo.

Namensherkunft: Policy-ADR — projektinterne Konvention dieses Setups.

quality.md

Was es ist: Die Triage des SQ-Kriterienkatalogs fürs Projekt: welche Kriterien gelten (A/B/C/D) und wie sie durchgesetzt werden ([Gate]/[Review]/[Perimeter]).

Wozu: „Fertig" ist definiert, bevor gebaut wird.

Mehr dazu: SQ-Kriterienkatalog; Phase-3-Runbook (Schichtungs-Regel).

TASKS.md / backlog.md

Was es ist: TASKS.md = Aufgabenschnitt des laufenden Vorhabens (TASK-NNN mit Status); backlog.md = Ideen und Aufgaben, die noch nicht eingeplant sind.

Wozu: Innere Struktur des Laufs vs. Speicher für Später — getrennt, damit der Lauf fokussiert bleibt.

GWT (Given / When / Then)

Was es ist: Formulierungsformat für Tasks und Akzeptanzkriterien: Ausgangszustand → Aktion → prüfbares Ergebnis.

Wozu: Macht „fertig" testbar statt interpretierbar — der Agent kann gegen das Then verifizieren.

Namensherkunft: Aus dem Behavior-Driven Development (Dan North, ~2006).

FACT vs. ANNAHME

Was es ist: Kennzeichnungsdisziplin in allen Dokumenten: verifizierte Aussagen tragen [FACT], ungeprüfte [ANNAHME].

Wozu: Falsify-first — jede ANNAHME ist ein offener Prüfauftrag, keine stille Wahrheit.

Mehr dazu: Tech-Book, Kopfnotiz.

A/B/C/D-Triage

Was es ist: Anwendbarkeits-Achse in quality.md: A = voll anwendbar … D = für dieses Projekt nicht anwendbar.

Nicht zu verwechseln mit: Durchsetzbarkeit — die steht als Tag ([Gate]/[Review]/[Perimeter]) daneben und wird nie mit A/B/C/D vermischt.

Handshake

Was es ist: Übergabedokument am Ende einer Session oder Etappe: was passiert ist, aktueller Stand, offene Punkte, Learnings.

Wozu: Der nächste Chat startet ohne Kontextverlust — Chats sind ephemer, Dokumente nicht.

DoD (Definition of Done)

Was es ist: Explizite Liste, wann etwas als fertig gilt — hier inklusive Doku-Abschluss und Handshake.

Wozu: Verhindert „fertig, bis auf …".

Slug

Was es ist: URL- und verzeichnistauglicher Kurzname: klein, ASCII, Bindestriche (z. B. proto-shop-medusa).

Wozu: Ein Name für Projektordner, Repo-Pfad und /goal-Bedingung.

Namensherkunft: Zeitungsjargon — Arbeitstitel einer Story in der Redaktion.

IDEA / Roadmap-Referenz (F/E)

Was es ist: Eintrag im IDEA-Pool der web-projects-roadmap. F = Track Fremd-CMS, E = Track Eigenentwicklung.

Wozu: Verknüpft das Projekt mit Vergleichspaaren, Hypothesen und Messprotokoll der Forschungsreihe.

Agent & Lauf

/goal + Vier-Teiler

Was es ist: Claude-Code-Kommando: setzt eine Abschlussbedingung; nach jedem Turn prüft ein Evaluator-Modell, ob sie erfüllt ist — sonst folgt der nächste Turn.

Wozu: „Entwickle bis fertig" statt „mach einen Schritt".

Vier-Teiler: messbarer Endzustand · Beweis im Transkript · Invarianten · Cap.

Nicht zu verwechseln mit: /loop (Zeitintervall-Wiederholung, nicht bedingungsgetrieben).

Auto-Mode

Was es ist: Claude-Code-Modus, der Tool-Aufrufe innerhalb eines Turns automatisch genehmigt.

Wozu: Nimmt das Pro-Aktion-Abnicken weg — nicht die Verantwortung für den Perimeter.

Nicht zu verwechseln mit: /goal (startet neue Turns; Auto-Mode tut das nicht).

Never-Sleeping-Harness

Was es ist: Watcher-Skript auf dem VPS, das Claude-Code-Sessions unbeaufsichtigt weitertreibt: Turn-Steuerung, Rate-Limit-/Kontext-Behandlung, Auto-Push nach jedem erfolgreichen Turn.

Wozu: Lange autonome Läufe ohne Menschen am Terminal.

Turn / Turn-Cap

Was es ist: Ein vollständiger Antwort-Zyklus des Agenten (inkl. seiner Tool-Aufrufe). Das Cap ist die Obergrenze in der /goal-Bedingung.

Wichtig: Das Cap im Text wird vom Modell beurteilt — kein harter Stopp. Hart ist nur das Token-Ceiling.

Token / Token-Ceiling

Was es ist: Kleinste Verrechnungseinheit für Modell-Ein- und Ausgabe (grob ¾ Wort). --tokens 250K setzt das harte Budget eines Laufs.

Wozu: Kosten- und Laufzeit-Deckel, der nicht auf Modell-Urteil angewiesen ist.

Evaluator

Was es ist: Kleines, schnelles Modell (Default Haiku), das nach jedem Turn nur das Transkript liest und die /goal-Bedingung prüft. Es ruft keine Tools auf und liest keine Dateien.

Wozu: Automatisierte Fertig-Prüfung — deshalb müssen alle Beweise als sichtbarer Befehlsoutput im Transkript stehen.

Sandbox (bubblewrap)

Was es ist: OS-Isolationsschicht um Claude Code (Linux-Namespaces): Datei-Lesesperren (denyRead) und Netz-Allowlist gelten für alle Bash-Subprozesse.

Wozu: Entkoppelt Codeausführung von Credential-Zugriff und Exfiltrations-Pfaden.

Nicht zu verwechseln mit: Podman-Containern (Infrastruktur-Dienste, die der Agent benutzt).

Gate A / Gate B

Was es ist: Die zwei Human-in-the-Loop-Grenzen des autonomen Arbeitens: Gate A = unsandboxte Befehle (excludedCommands wie podman), Gate B = Perimeter-Erweiterung (allowedDomains, neue git-Remotes).

Wozu: Ein Agent, der seinen eigenen Perimeter erweitert, hat keinen mehr — Gates öffnet nur der Mensch.

allowedDomains

Was es ist: Netz-Allowlist der Sandbox pro Projekt (.claude/settings.json) — nur gelistete Domains sind erreichbar, alles andere läuft in den Proxy-Timeout.

Wozu: Minimalprinzip: nur was Build/DB brauchen (npm-Registry, github.com …).

Invarianten

Was es ist: Explizit benannte Dinge, die der Agent nicht ändern darf: Dateien/Verzeichnisse (z. B. test/golden/), Schnittstellen, Perimeter.

Wozu: Teil von PRD und /goal-Bedingung — verletzte Invarianten machen einen Lauf ungültig, egal wie grün die Tests sind.

Halluzinations-Register

Was es ist: Laufende, typisierte Sammlung von Agent-Falschaussagen (Taxonomie nach Fehlerklassen, inkl. „CMS-Invariante" und „halluziniertes Scheitern").

Wozu: Macht Agent-Schwächen pro Stack messbar statt anekdotisch — Kern des Forschungsertrags.

Qualität & Messung

Observable Gate

Was es ist: Prüfkriterium, dessen Ergebnis als Befehlsoutput (Exit-Code, Konsolen-Ausgabe) im Transkript erscheint.

Wozu: Nur solche Kriterien kann der Evaluator verifizieren — was nicht im Transkript steht, existiert für ihn nicht.

[Gate] / [Review] / [Perimeter]

Was es ist: Durchsetzungs-Tags in quality.md: [Gate] = maschinell im Lauf geprüft, [Review] = menschlich nach dem Lauf, [Perimeter] = durch die Sandbox erzwungen.

Nicht zu verwechseln mit: der A/B/C/D-Triage (Anwendbarkeit) — zwei getrennte Achsen.

Lint

Was es ist: Statische Code-Prüfung auf Fehler, Stilverstöße und verdächtige Muster (z. B. ESLint), ohne den Code auszuführen.

Namensherkunft: Nach dem Unix-Werkzeug lint (Bell Labs, 1978) — benannt nach Textilfusseln.

Smoke-Test

Was es ist: Minimaler End-zu-End-Check „lebt das System?" — hier bewusst deterministisch (gibt exakt SMOKE: OK aus).

Namensherkunft: Aus der Elektronik: Gerät einschalten — raucht es?

Golden-Set / Golden-Vergleich

Was es ist: Fixierte Referenz-Ausgaben im Repo; der Test vergleicht die aktuelle Ausgabe exakt dagegen.

Wozu: Macht Determinismus prüfbar — jede Abweichung ist ein sichtbarer Diff, kein Bauchgefühl.

Lighthouse

Was es ist: Googles Audit-Werkzeug für Webseiten: Scores 0–100 für Performance, Best Practices, SEO, Accessibility.

Wozu: Als „Budget" (Mindestwerte, z. B. ≥ 90) wird daraus ein maschinell prüfbares Gate.

axe / pa11y

Was es ist: Automatisierte Barrierefreiheits-Prüfwerkzeuge — finden maschinell erkennbare WCAG-Verstöße (Kontraste, fehlende Labels, ARIA-Fehler).

Wichtig: Decken nur einen Teil ab — ein grüner axe-Lauf ist notwendig, nicht hinreichend. Rest bleibt [Review].

Basismetriken / Wall-Clock

Was es ist: Pro Projekt erfasst: Turns, Token, Wall-Clock (reale Dauer), menschliche Interventionen nach Anzahl und Typ.

Wozu: Vergleichsmatrix Fremd-CMS vs. Eigenbau am Ende der Reihe.

Mehr dazu: web-projects-roadmap §0.4.

Schichtanteile / Klick-Rest-Inventar

Was es ist: Messung (Track F): wie viel Prozent der Pflege-Operationen liefen über Dateien/CLI/API/MCP — und welche gingen nur per GUI-Klick (jeweils mit Grund protokolliert).

Wozu: Der empirische Kern der CMS-Bewertung für agentische Workflows.

Mehr dazu: web-projects-roadmap §0.4, Hypothesen H-1/H-2.

CLI-vs-MCP-A/B

Was es ist: Derselbe Content-Workflow zweimal ausgeführt — einmal roh per CLI, einmal über den MCP-Server des Systems; verglichen werden Token, Turns, Fehlerrate.

Wozu: Beantwortet empirisch, was der MCP-Layer kostet und kauft (Hypothese H-3).

Quality-Observation-Tracking

Was es ist: Sammelbegriff für das Messprotokoll des Projekts: Basismetriken + Halluzinations-Register + ggf. Schichtanteile.

Wozu: Jedes Projekt ist zugleich Datenpunkt der Forschungsreihe — Erfassung muss vor Projektstart definiert sein.

Stack & Architektur

CMS / Fremd-CMS

Was es ist: Content-Management-System — fertige Software für redaktionelle Pflege ohne Programmierung. „Fremd-" betont: nicht selbst gebaut (Track F).

Namensherkunft: Content Management System; WCMS = Web-CMS.

Headless CMS

Was es ist: CMS ohne eigene Auslieferungsschicht („Kopf") — verwaltet Inhalte und liefert sie per API an ein separates Frontend.

Wozu: Frontend-Freiheit; Inhalte mehrkanalfähig.

Nicht zu verwechseln mit: Flat-File (Speicherform, nicht Auslieferungsform — beides kombinierbar).

Flat-File

Was es ist: CMS ohne Datenbank — Inhalte liegen als Dateien (Markdown/YAML) im Dateisystem und damit im Git.

Wozu: Content wird diffbar, reviewbar, agentennativ; kein DB-Backup nötig.

SSG / SSR / SPA / Islands

Was es ist: Rendering-Strategien: SSG (Static Site Generation) = HTML zur Buildzeit; SSR (Server-Side Rendering) = pro Request am Server; SPA (Single-Page Application) = Rendern im Browser; Islands/Hybrid = statische Seite mit punktuell interaktiven Inseln.

Wozu: Bestimmt Performance-Profil, Hosting-Anforderungen und SEO-Verhalten.

Framework

Was es ist: Grundgerüst mit Konventionen (Routing, Build, Rendering, Datenfluss), in das eigener Code eingehängt wird — SvelteKit, Astro, Next.js, Laravel …

Wozu: Konventionen sind Leitplanken — auch für den Agenten.

CLI (wp-cli, Drush, artisan …)

Was es ist: Kommandozeilen-Schnittstelle eines Systems — die maschinennutzbare Schreibschicht unterhalb der GUI und oberhalb der Datenbank.

Wozu: Respektiert App-Invarianten (Caches, Hooks, Indizes) und ist zugleich agentennativ (Bash, Exit-Codes, Transkript-sichtbar).

Namensherkunft: Command Line Interface.

REST / GraphQL

Was es ist: HTTP-API-Stile: REST (Representational State Transfer) = Ressourcen unter URLs mit Standard-Verben (GET/POST/…); GraphQL = eine Abfragesprache, der Client bestimmt die Antwortform.

Wozu: Maschinenzugriff auf Inhalte/Funktionen ohne GUI.

MCP

Was es ist: Offener Standard, über den KI-Agenten externe Werkzeuge und Datenquellen typisiert ansprechen. Server laufen lokal (STDIO, als Subprozess) oder remote (HTTP).

Wozu: Capability-Discovery und gekapselte Semantik (z. B. TYPO3-Workspaces) — kein Muss bei lokaler CLI.

Namensherkunft: Model Context Protocol (Anthropic, 2024).

Mehr dazu: web-projects-roadmap §0.6 (Sandbox-Implikation), Hypothese H-3.

Config as Code / Content as Code

Was es ist: Konfiguration bzw. Inhalte liegen als Dateien im Repo statt in Klick-UIs oder nur in der DB.

Wozu: Diffbar, reviewbar, versionierbar — die agentennativste Form von CMS-Arbeit (Hypothese H-1).

pgvector / semantische Suche

Was es ist: Postgres-Erweiterung zum Speichern und Vergleichen von Embedding-Vektoren; Suche nach Bedeutungsähnlichkeit statt Wortgleichheit.

Wozu: „Frag diese Website"-Features, DSGVO-konform auf dem eigenen Server.

Pagefind

Was es ist: Clientseitige Volltextsuche für statische Sites — der Index entsteht zur Buildzeit, keine Server-Komponente nötig.

Wozu: Suche auf SSG-Seiten ohne Backend.

SQLite

Was es ist: Datenbank als einzelne Datei, läuft im Prozess der Anwendung — kein eigener DB-Server.

Wozu: „Boring Tech": ein Prozess, eine Datei, triviales Backup — für kleine Web-Apps oft die richtige Antwort.

Betrieb & Infrastruktur

VPS

Was es ist: Gemieteter virtueller Server mit vollen Root-Rechten (hier: Hostinger KVM 2, Debian 13, Frankfurt).

Namensherkunft: Virtual Private Server.

Podman / Quadlet

Was es ist: Container-Runtime ohne Root-Daemon (rootless); Quadlet = deklarative .container-Dateien, aus denen systemd reboot-feste Dienste erzeugt.

Wozu: Infrastruktur-Dienste (DB, PHP-Stacks) pro Projekt mit sauberem Kill-Switch.

Nicht zu verwechseln mit: der Claude-Code-Sandbox (isoliert den Agenten, nicht die Dienste).

Staging / Live + Promotion-Grenze

Was es ist: Getrennte Umgebungen; „Promotion" = bewusstes Befördern eines Stands von Staging nach Live.

Wichtig: Die Grenze ist OS-erzwungen (Dateirechte/Ownership), nicht bloße Konvention — der Agent kann nicht live deployen.

SSoT

Was es ist: Das eine maßgebliche Repo/Verzeichnis, aus dem alle Kopien und Deployments abgeleitet werden (hier: Bare-Repos auf code.straight8.de).

Namensherkunft: Single Source of Truth.

deploy-to-projects

Was es ist: Shell-Skript als excludedCommand: befördert Build-Artefakte aus der Sandbox heraus nach /var/www/projects/ (nutzt native Unix-Rechte).

Wozu: Brücke für Schreibzugriffe außerhalb des Projektordners, ohne die Sandbox aufzuweichen.

RAM-Klasse

Was es ist: Betriebs-Gewichtsklasse eines Projekts (leicht / mittel / schwer) fürs 8-GB-Budget des VPS.

Wozu: Schwere Stacks (Shopware, TYPO3, Medusa) laufen einzeln und werden nach Abnahme stillgelegt.

Mehr dazu: web-projects-roadmap §0.3.

llms.txt

Was es ist: Konvention: eine Markdown-Übersicht der Site unter /llms.txt, damit KI-Agenten Inhalte effizient lesen können.

Wichtig: Adoption ~10 %, für AI-Search-Zitationen heute wirkungslos — Nutzen liegt in der Agent-Schicht. Kosten ≈ null, daher Baseline.

Recht & Web-Standards

DSGVO

Was es ist: EU-Verordnung 2016/679 für die Verarbeitung personenbezogener Daten.

Wozu hier: Baseline jedes Projekts: EU-Hosting, lokale Fonts, cookielose Analytics, Datenminimierung.

Namensherkunft: Datenschutz-Grundverordnung (englisch GDPR).

AVV

Was es ist: Vertrag nach Art. 28 DSGVO mit jedem Dienstleister, der personenbezogene Daten im Auftrag verarbeitet (Payment, Mailversand, Hosting).

Namensherkunft: Auftragsverarbeitungsvertrag (englisch DPA).

SCCs

Was es ist: Von der EU-Kommission vorgegebene Standardvertragsklauseln für Datentransfers in Drittländer (v. a. USA — relevant bei Stripe & Co.).

Namensherkunft: Standard Contractual Clauses.

Consent-Banner / cookielos

Was es ist: Einwilligungsabfrage vor einwilligungspflichtigen Diensten (Tracking-Cookies, externe Einbettungen).

Wichtig: Cookielose Analytics (GoatCounter, Matomo richtig konfiguriert) brauchen keins — kein Banner ist ein Feature.

IP-Anonymisierung

Was es ist: Kürzen der IP-Adresse in Server-Logs (z. B. letztes Oktett), bevor sie gespeichert wird.

Wozu: Logs ohne dauerhafte personenbezogene Volldaten — Baustein der DSGVO-Baseline.

BFSG

Was es ist: Deutsche Umsetzung des European Accessibility Act; seit 28.06.2025 verbindlich u. a. für B2C-E-Commerce.

Wozu hier: Pflicht-Kriterium für alle Shop-Szenarien.

Namensherkunft: Barrierefreiheitsstärkungsgesetz.

EN 301 549

Was es ist: Europäische Norm für Barrierefreiheit von ICT-Produkten und -Diensten — der technische Maßstab hinter BFSG.

Wichtig: Verweist für Web-Inhalte auf die WCAG.

WCAG 2.2 AA

Was es ist: W3C-Richtlinien für barrierefreie Web-Inhalte; Konformitätsstufe AA ist der übliche gesetzliche Maßstab (A < AA < AAA).

Namensherkunft: Web Content Accessibility Guidelines.

DOI (Double-Opt-in)

Was es ist: Anmeldung + Bestätigungslink per Mail — erst der Klick aktiviert die Einwilligung.

Wozu: In Deutschland der Standard für den Nachweis von Newsletter-Einwilligungen.

i18n / l10n

Was es ist: Internationalisierung (Software mehrsprachfähig machen) und Lokalisierung (konkrete Sprach-/Regionsanpassung).

Namensherkunft: Numeronyme: i + 18 ausgelassene Buchstaben + n (internationalization), l + 10 + n (localization).

hreflang

Was es ist: HTML-Attribut/HTTP-Header, der Suchmaschinen die Sprach- und Regionsvarianten einer Seite nennt.

Wozu: Richtige Sprachversion im richtigen Markt — Pflicht bei Mehrsprachigkeit.

RTL

Was es ist: Schriftrichtung rechts-nach-links (Arabisch, Hebräisch).

Wozu hier: Stresstest für Layout und i18n-Disziplin — deckt hart kodierte Richtungsannahmen auf.

Namensherkunft: Right-to-Left.

prefers-color-scheme

Was es ist: CSS-Media-Feature, das die Systemeinstellung Hell/Dunkel des Nutzers meldet.

Wozu: „Beides, automatisch" — Farbmodus folgt dem System, ohne eigenen Toggle.

mobile-first

Was es ist: Gestaltungs- und CSS-Strategie: vom kleinsten Viewport ausgehen, nach oben erweitern.

Nicht zu verwechseln mit: „Desktop + Mobile optimiert" (nachträgliche Anpassung statt Ausgangspunkt).

GoatCounter / Matomo

Was es ist: Datenschutzfreundliche Analytics: GoatCounter = minimalistisch, cookielos; Matomo = self-hosted mit vollem Funktionsumfang, cookielos konfigurierbar.

Wozu: Reichweitenmessung ohne Consent-Banner und ohne US-Datenabfluss.

Offene Felder werden als OFFEN in Brief + PRD übernommen — kein Blocker.