Skip to content

feat(playlist): persist playlist records in the flat store - #42

Merged
cmglezpdev merged 1 commit into
feat/playlist-support-01-listingfrom
feat/playlist-support-02-store
Aug 20, 2026
Merged

cmglezpdev merged 1 commit into
feat/playlist-support-01-listingfrom
feat/playlist-support-02-store

Conversation

@cmglezpdev

Copy link
Copy Markdown
Owner

What this changes

The flat store can persist and rediscover playlist records: PlaylistRecord, a StoredRecord union discriminated on kind, and FsStore scan/save/find support so list and purge see playlist directories.

Why

A playlist run needs its own record for resume, list grouping, and purge. Legacy video state.json files (no kind) keep parsing unchanged; savePlaylist never touches index.json.

How to verify

pnpm typecheck
pnpm vitest run src/domain/run src/adapters/store --exclude '**/.claude/**'

Note the behavioral shift in purge(): its code is untouched, but it now removes playlist directories because #scan() returns both record kinds.

Checklist

  • pnpm typecheck and pnpm test pass
  • Commits follow Conventional Commits

Scope

  • Includes: playlist record + parser, stored-record union, store port additions, purge regression coverage.
  • Excludes: orchestration, prompt, CLI.

Chain Context

Field Value
Chain playlist-support
Tracker PR #40
Position 2 of 6
Base feat/playlist-support-01-listing
Depends on PR 1
Follow-up PR 3a (packageName option)
Review budget 583 / 400

Chain Overview

main
 └── #40 tracker: feat/playlist-support
      └── 01 listing → 02 store → 03a packageName → 03b prompt → 04 orchestrator → 05 CLI
          (this PR: 📍 2)

Add PlaylistRecord and a StoredRecord discriminated union parsed by
kind, keeping legacy video state files without kind valid. FsStore scan
now surfaces both record kinds so list and purge see playlist
directories; savePlaylist never touches index.json.
@cmglezpdev
cmglezpdev force-pushed the feat/playlist-support-02-store branch from d25f395 to 7d9ce8c Compare August 20, 2026 00:23
@cmglezpdev
cmglezpdev merged commit a50d583 into main Aug 20, 2026
3 checks passed
@cmglezpdev
cmglezpdev deleted the feat/playlist-support-02-store branch August 25, 2026 17:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant