refactor(playback): extract diagnostic utilities

This commit is contained in:
4gray committed 2026-08-04 21:27:33 +02:00
1 parent 7b704834e7
commit 2668fe0dd5
60 files changed
+820 -77

No files matched your search

+3 -2
View File
@@ -994,8 +994,9 @@ player in settings.
- `ShakaVideoSession` (`libs/ui/playback/src/lib/shaka-engine/`) owns the
engine: lazy `import('shaka-player')` on first use (the module is a separate
lazy chunk, ~217 KB transfer), `drm.clearKeys` configuration, an operation
queue + generation guard against channel-switch races, and a Shaka `5.2.2`
public-error boundary. The boundary version-locks its allowlisted
queue + generation guard against channel-switch races. The DOM-free Shaka
`5.2.2` public-error boundary lives in `libs/playback/util`; it version-locks
its allowlisted
severity/category/code values, emits only structured sanitized
`PlaybackDiagnosticSource.Shaka` evidence, ignores recoverable error events,
and treats a rejected load as terminal even if its final retry error retains
@@ -73,6 +73,11 @@ in `libs/portal/shared/util`, while reusable collection views stay in
`libs/portal/shared/ui`. Existing injectable or stateful services in a `util`
path are legacy debt, not precedent for new placement.
Playback follows the same split: browser and Angular player integration stays
in `libs/ui/playback`, while DOM-free diagnostic contracts and classifiers live
in `libs/playback/util` and receive browser capability checks as explicit
probes.
## Project Tags
Every Nx project keeps one tag from each family in `project.json`: