Series API and UI #39

Closed
opened 2026-08-22 18:22:40 +01:00 by naps62-yolo · 1 comment
Owner

Series equivalents of the movie endpoints, plus season and episode granularity:
set auto_track, mark individual seasons or episodes wanted, per-episode manual
search.

UI reuses the components from phase 5 — buckets, chips, derived status. If they
need forking rather than reusing, say so on the issue; that is a signal the
phase 5 components were built too narrowly.


Depends on: #34, #29, #36

Labels: phase/6-tv, area/api, difficulty/moderate, type/feature

Series equivalents of the movie endpoints, plus season and episode granularity: set `auto_track`, mark individual seasons or episodes wanted, per-episode manual search. UI reuses the components from phase 5 — buckets, chips, derived status. If they need forking rather than reusing, say so on the issue; that is a signal the phase 5 components were built too narrowly. --- **Depends on:** #34, #29, #36 Labels: `phase/6-tv`, `area/api`, `difficulty/moderate`, `type/feature`
naps62-yolo added the area/apiphase/6-tvdifficulty/moderatetype/feature labels 2026-08-22 18:22:40 +01:00
Author
Owner

The API half is in #81. The UI half is not, and the reason is the one this
issue asks about.

The issue says the UI reuses the phase 5 components — buckets, chips, derived
status. Those are #31, #32 and #33, all still open; #31 has a PR in flight
(#79) and the other two have not started. So it is not that the components are
too narrow to reuse — they do not exist on main yet. Building series views
now would mean writing the bucket table, the chip set and the status treatment
here, which is three other issues implemented inline.

Series views should follow once #31, #32 and #33 land, and at that point the
reuse-versus-fork question this issue raises can actually be answered.

Two API-side notes worth carrying forward:

  • The series table has no TVDB ID, so an episode search cannot use
    t=tvsearch&tvdbid= and falls back to a text search with the SxxEyy tag.
    That fallback is what DESIGN.md §6.1 describes, but ID-based TV search stays
    unavailable until TV metadata refresh exists to populate one. There is no
    issue for TV metadata refresh yet.
  • GET /api/releases?episode_id= returns 422 when the series has no
    original_language, rather than guessing one. §5.2 writes the language rule
    against the title's original language, so a guess would silently change every
    verdict.
The API half is in #81. The UI half is not, and the reason is the one this issue asks about. The issue says the UI reuses the phase 5 components — buckets, chips, derived status. Those are #31, #32 and #33, all still open; #31 has a PR in flight (#79) and the other two have not started. So it is not that the components are too narrow to reuse — they do not exist on `main` yet. Building series views now would mean writing the bucket table, the chip set and the status treatment here, which is three other issues implemented inline. Series views should follow once #31, #32 and #33 land, and at that point the reuse-versus-fork question this issue raises can actually be answered. Two API-side notes worth carrying forward: - The series table has no TVDB ID, so an episode search cannot use `t=tvsearch&tvdbid=` and falls back to a text search with the `SxxEyy` tag. That fallback is what DESIGN.md §6.1 describes, but ID-based TV search stays unavailable until TV metadata refresh exists to populate one. There is no issue for TV metadata refresh yet. - `GET /api/releases?episode_id=` returns 422 when the series has no `original_language`, rather than guessing one. §5.2 writes the language rule against the title's original language, so a guess would silently change every verdict.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: yolo/arr#39