57 lines
2.5 KiB
Markdown
57 lines
2.5 KiB
Markdown
# ECP-0098: NBC Native Auth Completion and Explicit Guide Program Labels
|
|
|
|
Status: Proposed
|
|
|
|
## Decision
|
|
|
|
Tighten the macOS-native NBC flow so Adobe Pass background-login completion in popup windows is
|
|
treated as a successful auth handoff, and expose explicit current-program metadata for NBC public
|
|
guide rows so the desktop channel list can render live program info directly.
|
|
|
|
The desktop app will:
|
|
|
|
- treat Adobe's `completeBackgroundLogin.html` popup landing as a native auth completion signal
|
|
- refocus and reload the main NBC player webview once that signal arrives so playback readiness can
|
|
continue in the same in-app session
|
|
- reload the main NBC player webview once when it is already back on a fully loaded NBC watch
|
|
surface but still has not materialized a video element
|
|
- persist the current live program as first-class guide metadata instead of relying only on the
|
|
generic `number` field
|
|
|
|
## Motivation
|
|
|
|
The first native `WKWebView` pass gets the user into Verizon login, but the Adobe handoff can end
|
|
inside a short-lived popup instead of automatically returning control to the main player window.
|
|
Without explicit completion handling, the native flow appears to stall after successful login.
|
|
|
|
Separately, NBC public discovery already carries current-program titles, but the desktop list was
|
|
rendering only the generic `number` slot. That makes guide rows look incomplete even when the
|
|
metadata is already available.
|
|
|
|
## Scope
|
|
|
|
In scope:
|
|
|
|
- native popup completion handling for Adobe background login on macOS
|
|
- readiness-loop updates needed to continue playback after popup completion or an already-authenticated return to the main watch surface
|
|
- explicit current-program metadata and guide-row subtitle rendering for NBC discovery rows
|
|
|
|
Out of scope:
|
|
|
|
- a broader redesign of the channel list for all source types
|
|
- removal of the Chrome NBC fallback path
|
|
- changes to NBC entitlement semantics beyond surfacing existing discovery metadata
|
|
|
|
## Alternatives Considered
|
|
|
|
- Keep waiting on the main player page only. Rejected because Adobe can finish inside a popup and
|
|
leave the main page idle.
|
|
- Continue storing NBC program info only in `StreamDescriptor.number`. Rejected because it obscures
|
|
intent and makes guide rendering brittle.
|
|
|
|
## Rollout / Reversibility
|
|
|
|
- The auth-completion change is additive to the native macOS NBC path and falls back to Chrome if
|
|
playback still does not become ready.
|
|
- The guide-label change is additive metadata plus UI presentation.
|
|
- Roll back by removing the popup completion hook and the explicit program-label rendering.
|