Generisches Tool für interaktive Podcast-Mindmaps mit Audio-Playback
Go to file
Dotty Dotter 7019a7a04e #20 Cross-Podcast-Mindmap mit Cross-Daten als Bruecken
Backend:
- /api/analyses/cross-network: Aggregat-Endpoint, der die Cross-Mindmap in einem
  Roundtrip versorgt — theme_clusters, themes, episodes, top_quotes (isTopQuote)
  und alle Cross-Link-Listen (debates, claim_belegt/-widerspricht/-erweitert,
  answers, similarity top-N pro source-episode + target-podcast).
- Filter aus den bestehenden Endpoints uebernommen: kein_bezug, error,
  Outro-Floskeln werden ignoriert.

Frontend (CrossMindmapView komplett umgebaut):
- Force-Graph mit vier Schichten: Cross-Theme-Cluster fix in der Mittelachse
  (gold, fett), Solo-Cluster lose, Themen je Podcast als zweite Schicht,
  Episoden ueber forceX in die Halbebene des Podcasts gezogen, Top-Quotes als
  Punkte am jeweiligen Episode-Knoten.
- Sechs Cross-Link-Typen mit eigenem Style:
  cross-debate (lila), claim-belegt (gruen), claim-widerspricht (rot),
  claim-erweitert (blau), answer (orange), similarity (hellblau gestrichelt,
  default aus).
- Toggle-Panel rechts oben (Vorlage: renderLinkToggles aus #19) je
  Verbindungstyp; Updates nur die opacity, kein Rebuild der Simulation.
- Klick auf Theme/Episode/Quote oeffnet den jeweiligen Single-Podcast-Modus
  und navigiert weiter (showEpisode + playFrom).
- Klick auf einen Cross-Cluster filtert die Mindmap auf seine Mitglieder
  (filterCluster) — Themen, Episoden und ihre Cross-Linien werden hervorgehoben,
  Rest gedaempft.
- Panel rechts: Counter je Cross-Typ als farbige Chips, Cross-Theme-Cluster-
  Karten und die Top-Debatten als Direkt-Einstieg in DebatesView.

Routing:
- Neue Route /cross laedt die Cross-Mindmap direkt; loadApp und der
  popstate-Handler unterstuetzen sie analog zu /ldn und /neu-denken.

Datenlage live: 246 Knoten, 1422 Linien (97 Debatten, 199 belegt, 58
widerspricht, 282 erweitert, 236 Antworten, 305 similarity).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-28 20:52:04 +02:00
backend #20 Cross-Podcast-Mindmap mit Cross-Daten als Bruecken 2026-04-28 20:52:04 +02:00
scripts match_claims.py: kein_bezug als Verarbeitungs-Marker speichern 2026-04-28 10:44:57 +02:00
webapp #20 Cross-Podcast-Mindmap mit Cross-Daten als Bruecken 2026-04-28 20:52:04 +02:00
.gitignore Phase 1+2: FastAPI-Backend, SQLite, Embeddings, Semantische Suche 2026-04-20 10:24:53 +02:00
docker-compose.yml Phase 1+2: FastAPI-Backend, SQLite, Embeddings, Semantische Suche 2026-04-20 10:24:53 +02:00
Dockerfile #8 Multi-Podcast-Dashboard, #9 PWA, #10 Cross-Podcast-Links, #12 Wort-Timestamps 2026-04-23 20:53:06 +02:00
project.example.yaml Initial commit: podcast-mindmap tool 2026-04-20 01:25:42 +02:00