Commit graph

2 commits

Author SHA1 Message Date
Till
03e2f041e5 ζ-1 Polish: robuster Header-Selektor + zitare.mana.how als 2. UL-Domain
- WebShellScripts.hideWebHeader: drei Selektor-Strategien gestapelt
  (data-app-nav-Marker / strukturell via :has(a.brand) / positionell
  via :first-of-type), damit Klassen-Renames in zitare-web das Hide
  nicht still brechen
- project.yml entitlements: applinks:zitare.mana.how als zweite
  Universal-Link-Domain, solange zitare.com-DNS-Zone fehlt. Beide
  Hosts liefern dasselbe AASA-File. Nach Cloudflare-Cut kann der
  Eintrag bleiben — schadet nicht
- Live-E2E verifiziert: simctl openurl https://zitare.mana.how/q/...
  → App empfängt Deep-Link, WebShell lädt die Quote-Page, native
  TabBar bleibt, Web-Header bleibt versteckt

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 20:51:03 +02:00
Till
dd10f85cca ζ-1 abgeschlossen: DeepLinkRouter + Web-Header-Hide
- DeepLinkRouter als pure-Logic-Enum aus RootView extrahiert
  (resolveToWebURL, isExplorePath, route)
- 11 DeepLinkRouterTests grün: custom-scheme, https passthrough,
  Erkunden-vs-Lesen-Routing, Substring-Guard
- WebShellScripts.hideWebHeader: WKUserScript injiziert at
  document.start CSS, das den zitare-Web-Header
  (body header:has(a.brand)) ausblendet. Native TabBar
  übernimmt globale Navigation, Content bleibt sichtbar.
- Simulator-Verifikation: Quote rendert ohne doppelte Nav-Leiste,
  17 (UI + Unit) Tests grün

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 13:06:37 +02:00