diff --git a/CLAUDE.md b/CLAUDE.md index 8339e35..83ab495 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -33,7 +33,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co - **IPC via context bridge only** — all main↔renderer communication goes through `preload.ts`. Never use `ipcRenderer` directly. - **State**: Global variables in both processes. Main process is source of truth; renderer syncs via IPC events. -- **Persistence**: JSON files in `C:\ProgramData\Twitch_VOD_Manager\` (config, queue, debug log). Config auto-saves with debounce. +- **Persistence**: JSON files in `C:\ProgramData\Twitch_VOD_Manager\` (config, queue, debug log) bleiben Source-of-Truth. Config auto-saves with debounce. Seit v5.0.0-alpha.1 spiegelt der Migrator (`src/main/domain/migrator.ts`) Konfiguration, Queue, downloaded_vod_ids und Streamer-Listen einmalig nach `app.db` (SQLite, better-sqlite3). Schema: `src/main/infra/schema-v5.ts`. Cutover (SQLite wird Master) in spaeterem Plan. - **Queue sync throttling**: Adaptive refresh rates based on window visibility (900ms active → 9000ms hidden). - **Caching**: Multi-tier in-memory caches (user IDs, VOD lists, clip info) with configurable TTL and periodic cleanup. - **Error classification**: Errors categorized as network/rate_limit/auth/tooling/integrity/io/validation/unknown with retry scheduling. diff --git a/tasks/v5.0.0-roadmap.md b/tasks/v5.0.0-roadmap.md index 2fd3843..5a45432 100644 --- a/tasks/v5.0.0-roadmap.md +++ b/tasks/v5.0.0-roadmap.md @@ -28,8 +28,8 @@ Beim Vergleich der echten Codebase (`src/main.ts` 7485 LoC mit 30+ Sektionen) ge ``` Plan 01: Foundation — Vitest + Pure-Utility-Extraction [DONE — v5.0.0-alpha.0] - └─> Plan 02: SQLite-Foundation (P3) [NEXT] - └─> Plan 03: OAuth Device Code (P2) + └─> Plan 02: SQLite-Foundation (P3) [DONE — v5.0.0-alpha.1] + └─> Plan 03: OAuth Device Code (P2) [NEXT] └─> Plan 04: Live-Recording Polish + Sub-only (P1) ├─> Plan 05: Auto-Discovery Erweiterung (P7) └─> Plan 06: UI Power-Features (P5) @@ -61,8 +61,8 @@ Plan 10 = Release. | # | Plan | Datei | Status | |---|---|---|---| | 01 | Foundation: Vitest + Pure-Utility-Extraction | `tasks/v5.0.0-plan-01-foundation.md` | **DONE** (v5.0.0-alpha.0) | -| 02 | SQLite-Foundation (Pillar 3) | `tasks/v5.0.0-plan-02-sqlite.md` | **NEXT** | -| 03 | OAuth Device Code (Pillar 2) | `tasks/v5.0.0-plan-03-oauth.md` | nach Plan 02 | +| 02 | SQLite-Foundation (Pillar 3) | `tasks/v5.0.0-plan-02-sqlite.md` | **DONE** (v5.0.0-alpha.1) | +| 03 | OAuth Device Code (Pillar 2) | `tasks/v5.0.0-plan-03-oauth.md` | **NEXT** | | 04 | Live-Recording Polish (Pillar 1) | `tasks/v5.0.0-plan-04-live-rec.md` | nach Plan 03 | | 05 | Auto-Discovery Erweiterung (Pillar 7) | `tasks/v5.0.0-plan-05-auto-disc.md` | nach Plan 04 | | 06 | UI Power (Pillar 5) | `tasks/v5.0.0-plan-06-ui-power.md` | nach Plan 04 |