0.2.55 - Remote config/Request fixes
This commit is contained in:
@@ -591,6 +591,8 @@ pieces make that true and each is easy to undo:
|
||||
(`component`, `user`, `device`, `client`) first so it can be read as a column, the
|
||||
constant `version` and the `error` last. `MEMBY_LOG_FORMAT` switches to `logfmt` or
|
||||
`json`; the ring buffer the admin page reads is fed the same records in every format.
|
||||
That ring is restored from a bounded JSONL archive in the persistent `memby-logs`
|
||||
volume, so a deployment replaces the process without erasing the operator's history.
|
||||
- `internal/api/logcontext.go` carries a **`*requestIdentity` in the request context**.
|
||||
`withLogging` creates it from the route and the client headers; `authed` fills in the
|
||||
viewer and television once the session resolves; both the handler's own events
|
||||
@@ -714,12 +716,16 @@ Emby time values are 100-ns ticks; convert at the boundary (`millisecondsToTicks
|
||||
`resumePositionMs`).
|
||||
|
||||
**A detail page is warmed while its card is focused, in two waves.** By the time somebody
|
||||
presses a card, the item record, its "why you might enjoy it" and its playable URL have all
|
||||
been fetched — and now so have its episode list and its trailer, which were the two things
|
||||
presses a card, the item record and its "why you might enjoy it" have been fetched — and now
|
||||
so have its episode list and its trailer, which were the two things
|
||||
the page still opened cold. That mattered most on Continue Watching, where every card is an
|
||||
episode and pressing one opened a page with no season scroller and no episode list until the
|
||||
network answered. Things to preserve:
|
||||
|
||||
- **Playback itself is never warmed on focus.** Emby's PlaybackInfo negotiation creates a
|
||||
playback session, so asking for it while somebody merely browses pollutes server history
|
||||
with titles they never played. Stream resolution begins only after a Play action.
|
||||
|
||||
- **The two waves have deliberately different delays.** The metadata warm follows the D-pad
|
||||
closely at `FOCUS_METADATA_DEBOUNCE_MS` (140 ms) because it decides what the panel beside
|
||||
the row says; `warmDetailPage` waits `DETAIL_PREFETCH_DELAY_MS` (450 ms) because an
|
||||
|
||||
Reference in New Issue
Block a user