diff options
Diffstat (limited to 'docs/MESHBAY_DESIGN.md')
| -rw-r--r-- | docs/MESHBAY_DESIGN.md | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/docs/MESHBAY_DESIGN.md b/docs/MESHBAY_DESIGN.md index 4daa094..4541d64 100644 --- a/docs/MESHBAY_DESIGN.md +++ b/docs/MESHBAY_DESIGN.md @@ -2615,6 +2615,28 @@ its own bounded pool after a file is first seen: the file appears in the index immediately with size and hash, and an index delta fills in the technical and parsed fields once ready. **No scan is blocked waiting for enrichment.** +**TMDB metadata is queried in one node-wide language, and not until one is chosen.** +A cached fiche is keyed by TMDB id alone — it records no language, because there is +only ever one. Two rules keep it honest, both there to make the very first fetch the +right language rather than English-then-corrected: + +- **No language configured, no query.** While `tmdb_language` is unset the node + answers `media_meta_req`/`season_meta_req` with confidence 0 and makes no TMDB call + — it does *not* fall back to TMDB's English default. Browsing the library is what + triggers the lazy fetch, and it routinely happens before the operator has opened the + settings, so querying on an unset language would fetch the whole library in English + and then throw it all away the moment a language was picked — double the requests + against TMDB's rate limit, for a result nobody wanted. The fetch waits for the + choice, so the first (and only) query is in the chosen language. English is a + first-class choice like any other (`en-US`), not the accidental default of skipping + the setting. +- **Changing the language wipes the cache.** A fiche fetched under the old language + would otherwise be served for its whole 30-day TTL. The file→TMDB matches are + language-independent and survive the wipe; only the localized fiches are dropped and + refetched, lazily, on the next request. The client refetches on its own when the + `tmdb_config_ack` carrying the new language arrives, so the grid switches language + (or fills in for the first time) without a page reload. + ### 9.8 Music An album browser and a player over the audio files in the group's configured |