read_media details: duplicate imdb, missing tmdb, bogus tvmaze identifier #6

Closed
opened 2026-09-19 08:20:12 +01:00 by gronod · 0 comments
Owner

Summary

read_media details emits a duplicated imdb identifier and drops the tmdb identifier for movie lookups, and emits a bogus tvmaze identifier echoing the TMDB id for tv lookups via provider: tmdb.

Environment

Reproduction

read_media {"action":"details","media":"movie","provider":"tmdb","id":348}
read_media {"action":"details","media":"movie","provider":"imdb","id":"tt0078748"}
read_media {"action":"details","media":"tv","provider":"tmdb","id":1206}

Expected

  • Alien movie details: tmdb:348, imdb:tt0078748 (each once).
  • Button Moon tv details via tmdb: tmdb:1206, tvdb:75150, imdb:tt0227882, tvmaze:4828.

Actual

  • Movie details emit imdb:tt0078748 twice and no tmdb identifier (also reproduced on Yummy/2207).
  • tv tmdb details emit tmdb:1206, tvdb:75150, imdb ×2, and tvmaze:1206 — the TMDB id echoed into the tvmaze namespace (real TVMaze id is 4828). The tvdb details route (provider: tvdb) correctly emits tvmaze:42468 for Seven Up!.

Causes

In internal/tools/project.go:

  • projectSearchMedia emits imdb from imdbId; projectFullMovie/projectFullTV then append imdb again from externalIds.imdbId → duplicate.
  • Movie tmdb is only read from theMovieDbId, which is absent on the details route response — no fallback to id or externalIds.
  • projectSearchMedia labels seriesId as tvmaze unconditionally; on the v2 moviedb route seriesId holds the TMDB id, not a TVMaze id — it should only be emitted from the v1 TVMaze-backed route.
  • Related: projectFullMovie adds belongsToCollection.id as a tmdb movie identifier — that id is the collection's TMDB id, not the movie's.

Correlation IDs

ffd178db79e1a625485193db, 9eb53c95559f4dfc1f6d56c9 (movie), 6b38ec2a17b930b7e9c9d242, 103e31ec38b54a78717c6cee (tv)

## Summary `read_media` `details` emits a duplicated `imdb` identifier and drops the `tmdb` identifier for movie lookups, and emits a bogus `tvmaze` identifier echoing the TMDB id for tv lookups via `provider: tmdb`. ## Environment - Binary: deployed darwin-amd64 build from `develop` @ `d047d76` - Ombi: 4.53.10 (https://ombi.i3omb.com), JWT auth ## Reproduction ```json read_media {"action":"details","media":"movie","provider":"tmdb","id":348} read_media {"action":"details","media":"movie","provider":"imdb","id":"tt0078748"} read_media {"action":"details","media":"tv","provider":"tmdb","id":1206} ``` ## Expected - Alien movie details: `tmdb:348`, `imdb:tt0078748` (each once). - Button Moon tv details via tmdb: `tmdb:1206`, `tvdb:75150`, `imdb:tt0227882`, `tvmaze:4828`. ## Actual - Movie details emit `imdb:tt0078748` **twice** and no `tmdb` identifier (also reproduced on Yummy/2207). - tv tmdb details emit `tmdb:1206`, `tvdb:75150`, `imdb` ×2, and `tvmaze:1206` — the TMDB id echoed into the tvmaze namespace (real TVMaze id is 4828). The tvdb details route (`provider: tvdb`) correctly emits `tvmaze:42468` for Seven Up!. ## Causes In `internal/tools/project.go`: - `projectSearchMedia` emits `imdb` from `imdbId`; `projectFullMovie`/`projectFullTV` then append `imdb` again from `externalIds.imdbId` → duplicate. - Movie `tmdb` is only read from `theMovieDbId`, which is absent on the details route response — no fallback to `id` or `externalIds`. - `projectSearchMedia` labels `seriesId` as `tvmaze` unconditionally; on the v2 `moviedb` route `seriesId` holds the TMDB id, not a TVMaze id — it should only be emitted from the v1 TVMaze-backed route. - Related: `projectFullMovie` adds `belongsToCollection.id` as a `tmdb` movie identifier — that id is the *collection's* TMDB id, not the movie's. ## Correlation IDs `ffd178db79e1a625485193db`, `9eb53c95559f4dfc1f6d56c9` (movie), `6b38ec2a17b930b7e9c9d242`, `103e31ec38b54a78717c6cee` (tv)
gronod added this to the M3 — Identity projection (discover → media → request) milestone 2026-09-19 08:57:53 +01:00
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Reference: gronod/ombi-mcp#6