`.claude/skills/jellyfin/` was a real directory holding a stale fork of the
canonical server-management copy, not the symlink CLAUDE.md described. It
documented `X-Emby-Token` as *the* auth pattern (v12 only accepts it via
`EnableLegacyAuthorization`, slated for removal in v13) and omitted the
`DELETE /Items/{id}` data-loss warning that has destroyed files three times.
Replaced with a relative symlink, matching the pattern server-management
already uses for beets/radarr/sonarr.
`.claude/skills/ersatztv/` had diverged in BOTH directions, so a replace in
either direction would have lost correct content. Contrary to the issue's
framing, server-management's copy was stale only in its `description:` — its
body already said "Full REST CRUD is available under /api/v1" and carried
~150 lines the ersatztv copy lacked (backup/deploy, test/prod topology,
streaming-mode analysis, VAAPI-vs-QSV, table schema notes, checklists). So
that file is the base, reconciled here as the canonical copy:
- fixed the dangerous `description:` claiming CRUD requires SQLite scripting
- ported ersatztv-only content: the silent root-owned api.key 401 trap, the
lying OCI labels, the local-vs-UTC log timestamp trap, the endpoint-index
pointer, `settings/ffmpeg` ordering, scoped test-image refresh
- added the #616 paging facts (0-based pageNum, per-endpoint pageSize cap,
playout/reset takes a CHANNEL id) per the request on #617
- corrected prod auto-update: `auto_update: false`, manual DeployStack only,
no 03:00 fallback (contradicted the fork's CLAUDE.md)
- corrected the ErsatzTV library ids: Music Videos is 16 and Standup 14, not
8/9 — verified live via GET /api/v1/media-sources
- unpinned the stale v26.8.0 image reference (current release is v26.12.0)
fixes #617
Symbolic link
1 line
50 B
Plaintext
Symbolic link
1 line
50 B
Plaintext
../../../server-management/.claude/skills/jellyfin |