What things are called, for the screens that only have an id.
The stats page used to name titles from the watch history, which worked while everything on it had been played here. Import a thousand ratings and most rows have no history entry at all — a list of "tv #4607" tells you nothing about what you watched.
So names are written down as laev learns them: the runtime lookup the stats page already does returns the title in the same response, and an import brings titles with it. Nothing here is ever fetched on its own account.
Summary
Functions
Every name laev knows, as %{"movie-550" => "Fight Club"}.
The name for a title, or nil.
Remember names, as %{{type, id} => name} or %{"movie-550" => name}.
Merged over what is already known, so a better name replaces a worse one.