Twitch-VOD-Manager/tasks/v5.0.0-roadmap.md
xRangerDE 956ffc30bc docs: v5.0.0 goal + roadmap + foundation plan
- tasks/v5.0.0-goal.md: 7-Pillar Vision, Breaking Changes, Release-Phasen
- tasks/v5.0.0-roadmap.md: Reality-Check vs Goal, 11-Plan Execution-Order
- tasks/v5.0.0-plan-01-foundation.md: Vitest + 5 Pure-Module-Extraktionen

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

4.0 KiB

v5.0.0 Roadmap (Reality-Aligned)

Baseline: v4.6.155 Spec: tasks/v5.0.0-goal.md Last verified: 2026-05-11


Reality Check vs. Goal

Beim Vergleich der echten Codebase (src/main.ts 7485 LoC mit 30+ Sektionen) gegen die Goal-Annahmen zeigt sich: einige "neu zu bauenden" Features existieren teilweise schon.

Pillar Goal sagt Reality Restarbeit %
P1 — Live Stream Recording "neu" Auto-Record-Poller, Live-Recording-Events-Log, Live-Chat-Capture existieren ~30% (Polish + Sub-only-Pfad nach OAuth)
P2 — Twitch OAuth "neu" App nutzt nur public Web-Client-ID, keine User-Auth 100%
P3 — SQLite-Migration "Breaking" Config + Queue + Stats sind JSON-Files 100%
P4 — main.ts Split "neu" 7485 LoC Monolith, 30 Sektionen, schon klar getrennt 100% (mechanische Arbeit)
P5 — UI Power-Features "neu" Vanilla DOM, keine Virtualisierung, kein Mini-Player, ein Theme 90%
P6 — Smart-Resume "neu" auto_resume_live_recording Flag existiert, auto_merge_resumed_parts, Crash-Recovery rudimentaer ~60% (Chunk-Hash + Integrity-Check fehlen)
P7 — Scheduled/Auto-Discovery "neu" Auto-VOD-Download-Poller + Live-Status-Batch-Poller schon implementiert ~30% (Top-Clip-Crawler, Follow-Sync fehlen)

Konsequenz: Reihenfolge der Plane orientiert sich am Restarbeits-Volumen und Dependencies.


Execution Order

Plan 01: Foundation — Vitest + Pure-Utility-Extraction          [START HIER]
  └─> Plan 02: Domain Modules (twitch-api, config, queue split)
       └─> Plan 03: Domain Modules (download, record, cutter, stats)
            └─> Plan 04: Final main.ts Split (ipc + index.ts + delete old main.ts)
                 └─> Plan 05: SQLite Migration (P3)
                      └─> Plan 06: OAuth (P2)
                           ├─> Plan 07: Live-Recording Polish + Sub-only (P1)
                           ├─> Plan 08: Auto-Discovery Erweiterung (P7)
                           └─> Plan 09: UI Power-Features (P5)
                                └─> Plan 10: Smart-Resume Finalisierung (P6)
                                     └─> Plan 11: v5.0.0-rc.1 → GA

Plan 01-04 = Pillar 4 (Architektur-Split, monolithische Aufgabe in 4 Teile gesplittet). Plan 05 = Pillar 3. Plan 06 = Pillar 2. Plan 07-09 = Pillars 1, 7, 5 parallelisierbar (verschiedene Subsysteme). Plan 10 = Pillar 6. Plan 11 = Release-Phase.


Plan Status

# Plan Datei Status
01 Foundation: Vitest + Pure-Utility-Extraction tasks/v5.0.0-plan-01-foundation.md bereit, wird ausgefuehrt
02 Domain Split Pt. 1 tasks/v5.0.0-plan-02-domain-pt1.md erstellt nach Plan 01
03 Domain Split Pt. 2 tasks/v5.0.0-plan-03-domain-pt2.md nach Plan 02
04 Final Architektur-Split tasks/v5.0.0-plan-04-final-split.md nach Plan 03
05 SQLite-Migration tasks/v5.0.0-plan-05-sqlite.md nach Plan 04
06 OAuth tasks/v5.0.0-plan-06-oauth.md nach Plan 05
07 Live-Rec Polish + Sub-only tasks/v5.0.0-plan-07-live-rec.md nach Plan 06
08 Auto-Discovery Erweiterung tasks/v5.0.0-plan-08-auto-disc.md nach Plan 06
09 UI Power tasks/v5.0.0-plan-09-ui-power.md nach Plan 06
10 Smart-Resume Final tasks/v5.0.0-plan-10-smart-resume.md nach Plan 09
11 Release 5.0.0 GA tasks/v5.0.0-plan-11-release.md nach Plan 10

Versionsstrategie

Plan abgeschlossen Version
Plan 01 5.0.0-alpha.0 (Foundation, opt-in via next channel)
Plan 02 5.0.0-alpha.1
Plan 03 5.0.0-alpha.2
Plan 04 5.0.0-alpha.3
Plan 05 5.0.0-beta.0 (SQLite Migrator live, Breaking)
Plan 06 5.0.0-beta.1 (OAuth live)
Plan 07 + 08 + 09 5.0.0-beta.2, .3, .4
Plan 10 5.0.0-rc.1
Plan 11 5.0.0 (stable)

Pro Plan: ein Release-Tag, Auto-Updater Channel next. 4.6-User bleiben auf stable und kriegen nur Bugfix-Patches der 4.6 Linie (sofern bestellt).