Skip to main content

Changelog

0.1.0 (2026-10-20)​

Bug Fixes​

  • Restore landscape card for landscape types (TAN-1913)
  • Dismiss splash screen on client mount (TAN-1911)
  • Point image CSP/remotePatterns at njpw proxy
  • Allow njpwworld.com VOD in media/connect CSP
  • Align registration with middleware v3 confirm contract (TAN-158)
  • Point ci/doc/storybook helm charts at the njpw ingress class and issuer
  • Align entitlement test fixtures (TAN-228)
  • Use approved browser globals (TAN-228)
  • Source pairing copy from Control (TAN-152)
  • Source settings copy from Control (TAN-220)
  • Render header sign-up as a compact button, not an oversized nav tab
  • Relax login password validation to non-empty (TAN-176)
  • Mount app router in stories that render ConfigProvider (TAN-2001)
  • Force sign-out on unresolvable 401 (TAN-144)
  • Register the device on successful account registration (TAN-144)
  • Stop overwriting the stable device-id cookie with the server-assigned one (TAN-144)
  • Align movie/episode OVP mapping to native
  • Fall back to top-level metadata when decorators array is empty
  • Recompute hero live/countdown state on tick + clear countdown interval
  • Episode duration from contents[] fallback + remove orphaned mapBadge
  • Guard episode decorators.metadata against non-array (crash broke season load)
  • Show episodes tab uses episodesTabText (Episodes), not the keyless matchesTabText
  • Rebuild detail hero to the split layout (content-left / artwork-right) per Figma
  • Auto-select first season without waiting for bookmark data (guests never selected)
  • Episode grid — 2-column horizontal cards (thumbnail-left) per Figma
  • Abort search on unmount + guard loadMore while loading
  • Read search base URL from NEXT_PUBLIC_SEARCH_BASE_URL
  • Send a single assetType/genreSlug (endpoint rejects comma-separated)
  • Keep server-only OTEL SDK out of the browser bundle (TAN-1874)
  • Don't swallow Next dynamic bailout in getServerLocale (unblocks prod build) (TAN-1874)
  • TAN-229: Correct Evergent checkout country and returnURL contract
  • Updated claude and copilot instructions
  • Home page UI, duplicate key (TAN-2051)
  • Hero carousel click fix (TAN-2051)
  • Wire the detail nav-bar share button to the share dialog
  • Make share dialog dismissable via close button
  • Derive broadcast-time zone labels so they follow DST (TAN-1874)
  • Request 16:9 hero image on mobile so it isn't cropped to a sliver
  • Treat empty visibilityAccess {} as visible, not hidden
  • Auto-select single profile + send post-auth to home
  • Device 'Registered' label fills for either {{date}} or {{value}} placeholder
  • Align show details CTA text and match card title/date with design (TAN-2064)
  • Align show details CTA icons, action row, and venue dropdown with design (TAN-2064)
  • Details page title alignment fix (TAN-2064)
  • Lint fixes (TAN-802)
  • Wire player restart button to seek to start (TAN-2094)
  • Live content playback fix (TAN-93)
  • Offset detail hero below the fixed page navigation (TAN-2095)
  • Read title/body from FCM data map in service worker (TAN-1866)
  • Hosted checkout signature field name and subscription base URL (TAN-229)
  • plan: Use non-parsed fence so lint:md passes
  • Resolve subscription crash and duplicate account settings UI (TAN-2105)
  • Reset menu overlays on route change (TAN-2105)
  • Show active subscription without a matched plan (TAN-2105)
  • Fall back to subscription sku for plan title (TAN-2105)
  • Align password rules across reset, update, and registration (TAN-2105)
  • Address account-settings code review findings (TAN-2105)
  • Use font-weight tokens and responsive title sizing (TAN-2105)
  • Update hosted checkout tests for MW signature field rename (TAN-229)
  • Hide SVOD badge display on tiles (TAN-2131)
  • Replace accedo placeholder logo with njpw logo (TAN-2131)
  • Replace accedo placeholder logo with njpw logo (TAN-2131)
  • Swiper pagination button added for more visibility (TAN-2131)
  • Rail title capped at 2 lines (TAN-2131)
  • Align nav search overlay to design with placeholder and full-width bar (TAN-1139)
  • Restyle search field and recent list to design, add inline empty/error states (TAN-1139)
  • Search bar padding fix (TAN-2134)
  • Remove close icon from applied filter chips (TAN-2134)
  • Restyle search filter selected state and panel spacing (TAN-2134)
  • Update footer to show only Help, Privacy Policy, Terms of Use links (TAN-591)
  • Improve footer link filtering to handle title variations (TAN-591)
  • Revert footer link filtering, add avatar parity for tablet/mobile header (TAN-591)
  • Open Help / Help & FAQ links in a new tab to help.njpwworld.com (TAN-591)
  • Remove unused getPageData call in MylistPage body (TAN-591)
  • Correct missing-translation fallback and stop removing rows on unfavorite (TAN-591)
  • Render page-local back/title nav inline instead of fixed (TAN-591)
  • Align tab and row spacing with Figma design (TAN-591)
  • Make favorites list responsive on desktop per Figma (TAN-591)
  • Hide back arrow next to Favorites title on desktop (TAN-591)
  • Reduce top offset so Favorites heading aligns with design (TAN-591)
  • Remove double top-offset causing extra 98px gap (TAN-591)
  • Zero out top padding so heading sits flush under nav (TAN-591)
  • Hide site footer on /mylist for mobile and tablet (TAN-591)
  • Clamp long row titles to 2 lines (TAN-591)
  • Remove favorite button and add row spacing on Recently Watched (TAN-591)
  • Match Recently Watched tile UI to Favorites, hide desktop back arrow (TAN-591)
  • Menu now correctly covers Favorites/Recently Watched when opened (TAN-591)
  • Reset pagination on profile/locale change, refactor translations (TAN-591)
  • Update test to verify profile switch uses correct new profile (TAN-591)
  • Apply prettier formatting to resolve eslint errors (TAN-2113)
  • Restore reopen-menu-on-back behavior lost during lint cleanup (TAN-591)
  • Reorder detail page tabs and add labels to more info fields (TAN-2113)
  • Remove key labels from More Info detail fields (TAN-2113)
  • Resolve validation errors from eslint and stylelint (TAN-2113)
  • Update UK spelling to US spelling in FCM service worker (TAN-2113)
  • Hide footer on mylist/recently-watched and remove nav link merge (TAN-591)
  • Invalidate favorites cache when item is unfavorited (TAN-591)
  • Highlight the correct field for change-email error states (TAN-2152)
  • Align Choose Your Plan cards, tabs and interval labels with design (TAN-228)
  • Show device limit icon and plan value (TAN-2172)
  • Place push alerts below home menu (TAN-794)
  • Navigate to details/player page from favorites and recently watched tiles (TAN-591)
  • Route recently watched episodes to their parent show page (TAN-591)
  • Allow episode content type in detail CTAs (TAN-591)
  • Route episodes to their own details page again (TAN-591)
  • Prevent HeroPreviewPlayer player recreation and stuck loading (TAN-591)
  • Resolve and thread server locale in the episode route (TAN-591)
  • Route episode grid tiles to their details page, not straight to the player (TAN-591)
  • Shrink hero title to 36px when paired with an eyebrow, per Figma (TAN-591)
  • Expand the in-hero preview player to fill the whole hero (TAN-591)
  • Add autoplay + loading indicator to HeroPreviewPlayer (TAN-591)
  • Resolve playback session unload permission policy violation and cookie deserialization (TAN-591)
  • Improve cookie deserialization and device ID resilience (TAN-591)
  • Ensure playback starts after manifest load (TAN-591)
  • Add comprehensive lifecycle logging to HeroPreviewPlayer (TAN-591)
  • CRITICAL - resolve player ref null after Fast Refresh unmount (TAN-591)
  • Fallback to provided URL when playback service request is aborted (TAN-591)
  • Resolve ESLint errors and Jest mock collisions (TAN-591)
  • Position progress bar on top of player in compact mode (TAN-591)
  • Add object-fit cover to video and move progress bar to bottom (TAN-591)
  • Use camelCase for SVG attributes in RestartIcon (TAN-591)
  • Hide binge watch overlay in embedded compact mode (TAN-591)
  • Suppress navigation on playback end in embedded mode (TAN-591)
  • Show hero image with play button when embedded playback ends (TAN-591)
  • Expand the in-hero preview player to fill the whole hero (TAN-591)
  • Revert to two-column hero layout (content left, artwork right) (TAN-591)
  • Remove padding-top from heroDetailContainer (TAN-591)
  • Make CTA buttons layout responsive (TAN-591)
  • Stack hero layout vertically on tablet and mobile (TAN-591)
  • Correct HeroPreviewPlayer resume-on-load bug and its test mock leak (TAN-591)
  • Don't misdetect Safari from UA-spoofed Chrome device emulation (TAN-591)
  • Navigate to details page instead of browser back on player exit (TAN-591)
  • Make player UI fill the window viewport (TAN-591)
  • Align primary CTA button to baseline for proper left alignment (TAN-591)
  • Add margin-right spacing to artwork panel per Figma design (TAN-591)
  • Make artwork panel margin responsive across breakpoints (TAN-591)
  • Optimize metadata layout for 720p resolution (TAN-591)
  • Change heroContent to percentage-based flex sizing (TAN-591)
  • Make hero layout responsive for 720p viewports (TAN-591)
  • Make artwork panel dominant by adjusting flex ratios (TAN-591)
  • Ensure metadata visibility in hero details (TAN-591)
  • Display episode metadata when play is activated (TAN-591)
  • Ensure metadata is visible in hero details (TAN-591)
  • Prevent hero title/CTA from being hidden under fixed page nav (TAN-591)
  • Push hero content down an additional 15px (TAN-591)
  • Add playerConfig check before rendering player (TAN-591)
  • Add null checks for startTime with 0 default (TAN-591)
  • Sync episode and show details pages with consistent spacing (TAN-591)
  • Sync DOM structure between show and episode details pages (TAN-591)
  • Correct broken CSS-module class selector for hero offset (TAN-591)
  • Stop applying show-only nav-clearance offset to all heroes (TAN-591)
  • Replace static heroContent max-width with resolution tier (TAN-591)
  • Shrink heroContent min-width floor so artwork isn't squeezed (TAN-591)
  • Apply exact Figma dimensions at wide viewports (TAN-591)
  • Revert fixed 1441px breakpoint, restore fluid artwork sizing (TAN-591)
  • Use flex-basis 0 so hero split ignores content differences (TAN-591)
  • Show CTA label going blank when resuming playback (TAN-591)
  • Fullscreen player back button leaves stale frame on navigation (TAN-591)
  • Lint issues (TAN-591)
  • Don't auto-navigate to next episode purely on video end (TAN-591)
  • Embedded binge-watch fullscreen continuity, clickability, and dismiss (TAN-591)
  • Show related items carousel in episode detail bottom section (TAN-591)
  • Restore episode/season browsing tab on episode detail page (TAN-591)
  • Unify hero title size and stabilize position across detail pages (TAN-591)
  • Apply hero padding-top only to show detail pages, not movie/episode (TAN-591)
  • Remove padding-top offset for episode pages only (TAN-591)
  • Show 'Favorite Episodes' label on episode details (TAN-591)
  • Autoplay next episode on binge-watch navigation (TAN-591)
  • Bump playToken on autoplay to reload embedded player source (TAN-591)
  • Remove the plans (TAN-2192)
  • Copy pnpm-workspace.yaml into docker deps stage so frozen install resolves overrides (TAN-228)
  • Correct TypeScript types in buildDetailBottomSectionProps (TAN-591)
  • Guard isPrincipal with strict false check; fix locale keys (TAN-228)
  • Convert Evergent day-based intervals to calendar units on parse (TAN-228)
  • Allow 1-2 character CJK search queries (script-aware minimum) (TAN-424)
  • ci: Authenticate the docs build to Artifactory so main deploys stop failing
  • ci: Install docs standalone with --ignore-workspace (docusaurus not found)
  • menu: Prettier formatting of filter conditions after removing subscription exclusion
  • Disable Next.js Data Cache for plans fetch (TAN-237)
  • Enable localization entries for episode key in CTA DTO (TAN-2195)
  • Align localization keys with backend dictionary (TAN-2195)
  • Recover embedded player after a fatal playback error (TAN-2195)
  • OK button in the player error dialog now actually closes it (TAN-2195)
  • ShakaPlayer.unload() never actually unloaded the source (TAN-2195)
  • Center loading spinner on recently-watched page (TAN-2195)
  • Center loading spinner on my-list page (TAN-2195)
  • Dedupe recoverable error popups, clear spinner on unload (TAN-2195)
  • Account for menu height when centering loading spinner (TAN-2195)
  • Dedupe error/resize listeners accumulating across retries (TAN-2195)
  • Reuse one dialogId so Try Again can't leave a ghost popup (TAN-2195)
  • Cancel/X fully stop player activity; add debug logging (TAN-2195)
  • RetryCounter effect kept re-running after the first retry (TAN-2195)
  • Show loading spinner when retry begins in embedded player (TAN-2195)
  • Add missing setReady to dependency arrays (TAN-2195)
  • web: Cache CMS layouts good-only with a 2-min TTL (no more frozen/sticky config)
  • Replace multiple schedule timezones with local time (TAN-2164)
  • Remove footer logo (TAN-2164)
  • Enable login password visibility toggle (TAN-2164)
  • Localize registration birthday picker and add year selection (TAN-2164)
  • Match password requirement indicators to Android (TAN-2164)
  • Use translated password validation hint across forms (TAN-2164)
  • Underline registration terms and privacy links (TAN-2164)
  • Update tests based on CI error and update metadata (TAN-2164)
  • Required docker file changes (TAN-2164)
  • Jest test scripts and config to address persistent pipeline error (TAN-2164)
  • Show name/email hierarchy and link to account in nav dropdown (TAN-2153)
  • Stop cancelling avatar preload on unmount (TAN-2153)
  • Allow GA4 domains in CSP and disable dev GA measurement id (TAN-2153)
  • Remove debug console.log from FCM handlers (TAN-794)
  • Polish manage plan cancel and PPV checkout actions (TAN-2153)
  • Stop payment callback screens overflowing off-screen (TAN-2153)
  • Stop a gateway success status echo from showing as an error message (TAN-2153)
  • Rebalance payment error screen icon size and spacing (TAN-2153)
  • Merge PPV entries into the subscriptions list with plan name, description, and price (TAN-2153)
  • Disable GA id, fix notification scroll, log FCM token (TAN-2153)
  • Show real renewal, end date, and purchase source for PPV rows (TAN-2153)
  • Navigate back in history instead of a reconstructed details URL from the player (TAN-2274)
  • Correct rail and grid card fallback image scaling and dim overlay (TAN-2274)
  • Restore pointer cursor on links (TAN-2274)
  • Wire up Go Live button and remove non-functional Cancel button (TAN-2273)
  • See all top padding fix (TAN-2266)
  • Add local Twitter icon for footer social media links (TAN-2316)
  • Use TwitterIcon from assemble library, keep only TikTok as local (TAN-2316)
  • Render TikTok icon as inline SVG component instead of img (TAN-2316)
  • Resize TikTok icon glyph to match other footer social icons (TAN-2316)
  • Patch @accedo/web-ui-footer to fix crash on Japanese locale (TAN-2316)
  • Keep navigation menu visible on page not found (TAN-2272)
  • Stop page navigation overlaying the menu on not found (TAN-2272)
  • Standardize search result thumbnail sizes across breakpoints (TAN-2328)
  • Pin sticky header to viewport top on scroll (TAN-2328)
  • Keep search toolbar visible when sort returns no results (TAN-2328)
  • Show search results when sorting by oldest (TAN-2328)
  • Limit carousel tiles to see-all threshold (TAN-2320)
  • Validate password confirmation before registration form is complete (TAN-2164)
  • Align drop downs next to Schedule text as per #10 (TAN-2164)
  • Show nickname instead of email in menu as per item #22 (TAN-2164)
  • Hide subscribed banner CTA, fix signup meta title key (TAN-2366)
  • Hide purchase banner while subscription status is loading (TAN-2366)
  • Stop description overflow and title/CTA push-down in hero detail (TAN-2366)
  • Match favourites page layout and favourite CTA styling to design (TAN-2366)
  • Scale hero artwork panel proportionally at wide viewports (TAN-2372)
  • Use eye-slash icon for hide-password toggle (TAN-2372)
  • Replace Accedo branding with NJPW branding and fix missing/broken page metadata (TAN-2372)
  • Keep sticky menu in document flow to stop scroll-jump on short pages (TAN-2372)
  • Use correct expand icon and switch player fullscreen icon by state (TAN-2372)
  • Add border to inactive hero banner pagination dots (TAN-2372)
  • Trim search query and allow filter-only search with empty query (TAN-2165)
  • Use page_search_input_hint key for search placeholder text (TAN-2165)
  • Drop by from search sort trigger label for platform consistency (TAN-2165)
  • Show total result count in the search results label (TAN-2165)
  • Avoid double colon when sort label already has one from CMS (TAN-2165)
  • Render search result cards with the shared rail card component (TAN-2165)
  • Fill search results grid edge to edge instead of leaving dead space (TAN-2165)
  • Make mobile filter panel a full-screen overlay, Year before Match Type (TAN-2165)
  • Reduce vertical padding on hero purchase CTA (TAN-2373)
  • Remove rail title-to-thumbnail vertical spacing (TAN-2373)
  • Tighten rail card thumbnail-to-metadata spacing (TAN-2373)
  • Allow *.njpwworld.com in CSP img-src so images load on preview
  • Handle 409 DEVICE_REGISTRATION_IN_PROGRESS during device registration (TAN-2085)
  • Give the session cookie a lifetime and stop the proxy dropping it (TAN-2309)
  • Don't sign out a healthy session on a merely-stale token; strip debug logging (TAN-2309)
  • Close two gaps the medium-effort code review found (TAN-2309)
  • Removed unused comments
  • Keep the global 401 sign-out from erasing the delete confirmation (TAN-2408)
  • Release the 401 suppression on every refused deletion (TAN-2408)
  • Persist device-id to localStorage as cookie-clear resilience (TAN-2085)
  • Fix device-id double-serialization and logout re-registration (TAN-2389)
  • Allow unicode characters in profile name validation (TAN-2395)
  • Restore tick mark and Clear All on search filter dropdowns (TAN-2416)
  • Use the real CMS keys and send locale on facets (TAN-2416)
  • Translate match type values via page_search_event_type_ keys (TAN-2416)
  • Use a single caret icon on the filter dropdowns (TAN-2416)
  • Keep Sort By on its own icon, only Match Type/Year get the caret (TAN-2416)
  • Even out filter toolbar and Clear All spacing (TAN-2416)
  • Center mobile rail nav arrows on the thumbnail, not the card (TAN-2416)
  • Tighten Match Type/Year caret gap on the filter dropdowns (TAN-2416)
  • Simplify account menu dropdown and update info avatar (TAN-2395)
  • Remove extra cookie consent footer toggle (TAN-2436)
  • Update E2E tests (TAN-2436)
  • Recover gracefully from a failed profiles/ fetch instead of locking out the app (TAN-2439)
  • Pass bearer token in plans call for logged-in users (TAN-2474)
  • Point assetlinks.json at the NJPW World Android apps (TAN-2092)
  • Serve the AASA from /.well-known/ with the NJPW app IDs (TAN-2092)
  • Dev and staging team id updated (TAN-2092)
  • Event details hero no longer clipped by nav or long titles (TAN-2375)
  • Hide next-video button during live playback (TAN-2335)
  • Enable GoLive for live eventstream and fix live seekbar time display (TAN-2333)
  • Split favorites into episode matches and show series tabs (TAN-2375)
  • Show favorite action only on show and episode details (TAN-2375)
  • Keep favorites tabs visible while a tab loads (TAN-2375)
  • Compute live and live-now badges like the native apps (TAN-2375)
  • Show one prioritized badge on thumbnails and all badges on details (TAN-2375)
  • Show live-now text on highlight cards only while the event is live (TAN-2375)
  • Open event details instead of the player for eventstream cards (TAN-2375)
  • Support eventstream assets on the event details page (TAN-2375)
  • Keep embedded live player controls in sync when autoplaying with sound (TAN-2375)
  • Unmute the player when raising volume from muted (TAN-2375)
  • Label the eventstream play action Watch Live like android (TAN-2375)
  • Clear stale search results when typing drops below the minimum length (TAN-2375)
  • Swap event details tab order to More Info first, dedupe detail CSS (TAN-2375)
  • Search placeholder (TAN-2375)
  • Resolve SonarCloud findings on PR #118 (TAN-2375)
  • Keep the nav bar pinned and mounted across pages with a content-area loader (TAN-2476)
  • Stop subscribers re-buying plans or owned PPVs (TAN-2476)
  • Show a hero loader while a trailer or show episode loads for playback (TAN-2476)
  • ci: Bake NEXT_PUBLIC_SEARCH_BASE_URL into the web image
  • Show fallback poster on schedule cards with missing or broken images (TAN-567)
  • Show shared fallback image on hero, favorites, cast and schedule assets (TAN-567)
  • Span favorites loader across list columns so the spinner renders whole (TAN-567)
  • Route new users to subscription page after registration (TAN-2491)
  • Show loading state during login submit and logout confirmation (TAN-2333)
  • Match hero image ratio to artwork panel to stop title crop (TAN-2333)
  • Stop auto-starting playback and fix stale live-controls latch for live events (TAN-2333)
  • Stop forcing live-event playback into channel-only controls (TAN-2333)
  • Reorder badge priority so ppv outranks live, matching android/iOS (TAN-2375)
  • Only cap a rail's displayed items when CMS enables See All (TAN-2333)
  • Derive live event time labels and scrubber from the seekable window (TAN-2333)
  • Handle unbounded live seekable ranges and play started events as live (TAN-2333)
  • Gate live-event controls on the stream being live and show a labelled Go Live button (TAN-2333)
  • Hide the Watch Live CTA for eventstreams that are not currently live (TAN-2333)
  • Pick the DRM stream the browser supports instead of the first one listed (TAN-2333)
  • Give movie and episode detail pages all their streams so the player can play them (TAN-2333)
  • Keep live seeks inside a real seekable range across DVR gaps (TAN-2333)
  • Keep live rewind and fast-forward inside the DVR window after Go Live (TAN-2333)
  • Keep a live event playing live after its scheduled end instead of reloading (TAN-2333)
  • Show the live dot icon only on the Live Now badge (TAN-2333)
  • Require incidents prop and remove stale banner call site (TAN-2457)
  • Validate FCM deep links, gate banner to home page, harden edge cases (TAN-2457)
  • Persist dismissed service alerts, rank CMS severities and show banner on home only (TAN-2457)
  • Claim /episode/* in the AASA so episode links open the app (TAN-2092)
  • Tighten banner spacing and font weights (TAN-2571)
  • Center empty favorites text and hide load more when list is empty (TAN-2575)
  • Show full episode hero title without line clamp (TAN-2522)
  • Ignore stale bookmark responses after asset change (TAN-2522)
  • Vertically center snackbar icon with title (TAN-2519)
  • Use compact hero title for event assets and stop clipping descenders (TAN-2519)
  • Render a single navbar on page not found under withMenu (TAN-2519)
  • Simplify page not found with centered content and home button (TAN-2519)
  • Disable OTP input and verify when the code expires (TAN-2502)
  • Request 16:9 hero image on the details page so it isn't cropped (TAN-2508)
  • Add settings gear to the compact details-page player (TAN-2507)
  • Show event countdown timer and disable Play until it ends (TAN-2519)
  • Restore compact settings panel, countdown label and OTP and timer edge cases (TAN-2519)
  • Localize event countdown labels (TAN-2519)

Features​

  • Splash screen (TAN-1911)
  • Resolve review comments (TAN-1911)
  • TAN - 1913 update home page UI
  • Update (TAN-1913)
  • Splash label font fix and typography updates (TAN-1913)
  • Player ui components
  • Wire player title/description to asset metadata (TAN-1913)
  • Add Evergent OTP register methods to idp provider (TAN-158)
  • Add registration zod schemas and password rule (TAN-158)
  • Add useRegistration OTP wizard hook (TAN-158)
  • Add registration email step (TAN-158)
  • Add registration verify-code step (TAN-158)
  • Persist registration account details (TAN-158)
  • Complete responsive registration wizard (TAN-158)
  • Add web password reset flow (TAN-176)
  • Integrate Evergent hosted checkout (TAN-228)
  • Add shared resolveErrorMessage util with errorCode helpers (TAN-138)
  • Expose localization errors map via useErrorMessage hook (TAN-138)
  • Resolve login errors via Control errors map (TAN-138)
  • Route registration error copy through resolveErrorMessage (TAN-138)
  • Map forgot and reset password errors by middleware errorCode (TAN-138)
  • Add IdpService.claimPairingCode for pairing approval (TAN-138)
  • Add pairing dictionary keys and gate the connect route (TAN-138)
  • Add /connect TV pairing approval page (TAN-138)
  • Settings shortcut dropdown from header user icon (TAN-220)
  • Add /connect device-pairing page (TAN-152)
  • Localize the /connect page via CMS dictionary keys (TAN-152)
  • Show the logo header on /connect (TAN-152)
  • Connect page flows below logo header (css) (TAN-152)
  • Device-management implementation (TAN-196)
  • Consistent locale switching across surfaces (TAN-2001)
  • TAN-196: Redesign Device Management to match Figma
  • TAN-196: Add login-gate limit popup and fix device-id consistency bugs
  • OTP verify-on-entry, editable input, countdown with MW-driven TTL (TAN-160)
  • Support free/svod/ppv/live_now badges and render multiple
  • Add Reminder/Download/Share/Trailer detail CTAs
  • Detail hero — multiple badges, live-now overlay, event countdown; drop score
  • Event detail — match-card More Info + Related tabs, wire Share CTA, localize labels
  • Show detail — Matches (season dropdown + ordinal/air-date episode cards) | Related | More Info tabs
  • Movie detail Related|More Info tabs + finalize More Info content (drop dead producer block)
  • Search service interface + types
  • Web search provider (unified /search + facets)
  • Recent-search 10 stored / 3 shown
  • Search state hook (debounce/min-1/pagination/filters)
  • Forward locale to search in useSearchState
  • Web search results grid + wire page to state hook
  • Web search filters + sort
  • Wire search header entry point to /search
  • Localize search filter/sort labels
  • Replace New Relic with OpenTelemetry/OTLP (SigNoz) (TAN-1874)
  • Add OpenTelemetry video/player QoE analytics (TAN-1874)
  • OTEL global browser error capture + lint fixes (TAN-1874)
  • Restore home-page UI from demo-fixes (TAN-1874)
  • Custom social share dialog on detail pages
  • Hide Favourite on live-type events (Reminder replaces it)
  • Add web Schedule page (events listing) (TAN-1874)
  • Add match-type and year search filters as dropdowns
  • Align favorite CTA with design (heart icon, always visible, login redirect) (TAN-2064)
  • FCM push token registration — web (TAN-802)
  • Add player playlist overlay linked to control-bar button (TAN-2094)
  • Persist subtitle and audio track selection (TAN-93)
  • Restore saved or default tracks on playback start (TAN-93)
  • Label audio tracks with localized language names (TAN-93)
  • Add unified player settings panel component (TAN-93)
  • Surface subtitles and audio in the settings panel (TAN-93)
  • Show asset description in the detail hero (TAN-2095)
  • Hide rail headings on detail-page related rails (TAN-2095)
  • Unify the More Info tab across detail pages (TAN-2095)
  • analytics: GA4 web integration (User Analytics) [TAN-960]
  • Menu display in sync with figma design (TAN-2105)
  • Add Privacy Policy and Terms of Use pages (TAN-2105)
  • Add Recently Watched page backed by play history API (TAN-2105)
  • Wire up email-change OTP verification with real timer (TAN-2105)
  • Surface asset metadata in more info tab as value list
  • Add FCM foreground handler and push notification banner (TAN-806)
  • Add clear button to search input and filter/sort icons (TAN-2134)
  • Replace search sort toggle with a dropdown menu (TAN-2134)
  • Move search filters into a slide-out panel with toolbar chips (TAN-2134)
  • Submit-only search for japanese locale and allow unicode queries (TAN-424)
  • Make search page size configurable, default 24 (TAN-1139)
  • Show published date on search result cards (TAN-1139)
  • Scope recent searches per user and clear on logout (TAN-1139)
  • Open search page from nav icon and remove inline search overlay (TAN-1139)
  • Submit-only search with min length 3 and no page refresh (TAN-424)
  • Render search result cards as a consistent landscape grid (TAN-1139)
  • Show skeleton placeholder grid while search results load (TAN-1139)
  • Preserve search query and scroll position on return from detail (TAN-1139)
  • Limit search filters to match type and year (TAN-2134)
  • Complete the update email flow with the standalone OTP endpoints (TAN-2152)
  • Merge top-nav menu items into footer on tablet/mobile (TAN-591)
  • Add favorite content-type category mapping (TAN-591)
  • Return pagination metadata from getFavorites (TAN-591)
  • Fetch all favorite types, split into events/matches, paginate (TAN-591)
  • Add responsive styles for favorites tabbed list (TAN-591)
  • Add Events/Matches tabbed favorites list UI (TAN-591)
  • Replace MyList rails with Events/Matches favorites view (TAN-591)
  • Back arrow on /mylist reopens the mobile/tablet menu (TAN-591)
  • Reuse favorites row template for Recently Watched (TAN-591)
  • Show close (X) instead of Menu on Favorites/Recently Watched (TAN-591)
  • Add PPV/TVOD plan tab to Choose Your Plan page (TAN-228)
  • Add notification mock state (TAN-794)
  • Add notifications mock page (TAN-794)
  • Expose notification menu item (TAN-794)
  • Persist local FCM notifications (TAN-794)
  • Add optional eyebrow line to HeroDetail title (TAN-591)
  • Add artworkOverlay slot to HeroDetail (TAN-591)
  • Pass episode show title as hero eyebrow (TAN-591)
  • Add onPlayOverride to CTAButtons (TAN-591)
  • Seed DetailBottomSection Episodes tab from a parent show/season (TAN-591)
  • Add HeroPreviewPlayer for in-hero episode playback (TAN-591)
  • Add EpisodeDetails client feature (TAN-591)
  • Add /episode/{id} route (TAN-591)
  • Embed full PlayerComponent in episode details hero instead of separate preview player (TAN-591)
  • Implement Figma full-bleed hero layout with overlaid content (TAN-591)
  • Apply Figma hero design specifications (typography and dimensions) (TAN-591)
  • Reduce play button size and auto-adjust to content (TAN-591)
  • Align CTA button left and remove progress bar from hero (TAN-591)
  • Update CTA buttons layout to Figma spec (TAN-591)
  • Add align-self baseline to CTA buttons (TAN-591)
  • Add align-self baseline to primary CTA button (TAN-591)
  • Set explicit widths for metadata and video columns (TAN-591)
  • Make hero layout responsive across breakpoints (TAN-591)
  • Implement in-hero player for show details page (TAN-591)
  • Add episode details support and player improvements (TAN-591)
  • Render episode details hero title at 36px with 4-line clamp (TAN-591)
  • Enable binge-watch overlay for the embedded player (TAN-591)
  • Add playToken counter to usePlayOverride (TAN-591)
  • Force-reload current source on a later playToken/asset change (TAN-591)
  • Keep EmbeddedHeroPlayer mounted across plays instead of unmounting (TAN-591)
  • Forward playToken from ShowDetails/EpisodeDetails to the embedded player (TAN-591)
  • Extract useHeroPlayer hook from ShowDetails/EpisodeDetails wiring (TAN-591)
  • Unify movie and show detail pages to reuse embedded player (TAN-591)
  • Merge episode details into unified detail page (TAN-591)
  • Compact player UI improvements (TAN-591)
  • Add PPV purchases to Manage Plan and Account Subscription pages (TAN-228)
  • menu: Show Subscription + Notifications on web, guarded by login redirect
  • Prevent repeated error popups by unloading source on playback error (TAN-2195)
  • Show accurate multi-plan subscription details on account page (TAN-2153)
  • Replace purchase history accordion with dedicated year view (TAN-2153)
  • Align manage plan page UI with figma design (TAN-2153)
  • Add PPV purchase flow from manage plan page (TAN-2153)
  • Add payment callback failure message and order reference helpers (TAN-2153)
  • Let PaymentError show the gateway's failure message (TAN-2153)
  • Add Manage Subscription button to payment success screen (TAN-2153)
  • Wire payment callback screens to gateway message and order reference (TAN-2153)
  • Pass idempotencyKey through verifyContext for Redis eviction recovery (TAN-228)
  • Add TikTok SVG icon for footer social media links (TAN-2316)
  • Add playback speed selector to player settings menu (TAN-2366)
  • Show live badge over hero banner image per design (TAN-2372)
  • Clean up push token on logout without device deregistration (TAN-2388)
  • Add cancel button to reset password form (TAN-2255)
  • Extend the session window on each return, with session diagnostics (TAN-2309)
  • Add cookie consent and shared privacy preferences (TAN-2164)
  • Add deleteAccount to the idp provider (TAN-2408)
  • Gate account deletion on having no active subscription (TAN-2408)
  • Replace search Filter menu with left aligned dropdowns (TAN-2416)
  • Cast to the Chromecast receiver from the web player (TAN-2450)
  • Let the embedded player autoplay with sound and live controls (TAN-2375)
  • Auto-play live events inline on the event details page (TAN-2375)
  • Play event details CTAs in the inline player (TAN-2375)
  • Make useSearchState's minimum query length configurable (TAN-2375)
  • Progressive search input wired to CMS-configured minimum length (TAN-2375)
  • Send the viewer's country to the middleware on OVP calls (TAN-235)
  • Render the full top nav bar consistently across nested and detail pages (TAN-2476)
  • Match the subscription page to the Choose Your Plan design (TAN-2476)
  • Show the nav bar on payment and drop the signup step label (TAN-2476)
  • player: Play a live event's resolved playbackAssetId
  • schedule: Show and sort the schedule by event start date
  • rails: Render SEARCH/events-sourced dynamic rails on the home page
  • Drive social sharing visibility from CMS config (TAN-567)
  • Add red border and badge border styling for live event hero artwork (TAN-2333)
  • Add forceLiveNow dev override for previewing live-now UI (TAN-2333)
  • Expose seekable-range end from both player wrappers (TAN-2333)
  • Add live-edge latch and Go Live wiring to player controls (TAN-2333)
  • Add service-incident selection model (TAN-2457)
  • Fetch active service incidents from CMS (TAN-2457)
  • Render single active service incident in home banner (TAN-2457)
  • Mount service-incident banner between navbar and hero (TAN-2457)
  • Show live FCM push as a confirmation dialog (TAN-2457)
  • Show service-alert pushes as home banner and align push dialog and banner to Figma (TAN-2457)
  • Add play button overlay to episode details hero (TAN-2522)

Other​

  • Migrate npm auth to shared Nexus restore-npmrc step
  • Fix TLS
  • TLS fix
  • Update values.yaml
  • Remove temporary debug logging (TAN-591)
  • Web prod: HPA min3/max10 (prod only; dev/staging keep single replica)

Performance​

  • Render search shell immediately and stream CMS rails behind a loader (TAN-1139)
  • Skip favorite lookup on detail pages that cannot be favorited (TAN-2375)
  • Limit the Continue Watching rail request to 20 items (TAN-2333)

Refactoring​

  • login: Integrate password reset functionality
  • Remove legacy direct register endpoint (TAN-160)
  • Drop hardcoded fake score from show/season parsers
  • Gate detail CTAs via passed-in flags (client-safe), not process.env
  • Simplify the carousel server-fetcher error path (TAN-2095)
  • Extract useFavoriteToggle from CTAButtons (TAN-591)
  • Collapse redundant isShow flag into usesSeasonTitleLabel (TAN-591)
  • Remove continueWatching wrapper class (TAN-591)
  • Extract shared embedded-player hooks from ShowDetails/EpisodeDetails (TAN-591)
  • Removed plans (TAN-591)
  • Reduce cognitive complexity in ShowDetails and ctadto (TAN-591)
  • Replace Schedule's native selects with the shared FilterDropdown menu (TAN-2417)
  • Remove update password option from account settings (TAN-2375)
  • Remove unused Order and web-inert Download CTAs (TAN-2476)
  • Rename PlayerInfo's Go Live gate to showGoLive (TAN-2333)

Reverts​

  • Remove changePassword 401 exclusion from fetcher (TAN-2130)
  • Revert "[TAN-591] feat: show close (X) instead of Menu on Favorites/Recently Watched"

This reverts commit 7d62a90387abb18081d4cec9ebe632eaac8f844b.

  • Revert "[TAN-591] chore: update page title from 'My List' to 'Favorites'"

This reverts commit 42e2662c9824901f8f3a238ca7d1a85012680a9f.

  • Revert "[TAN-591] chore: update menu label from 'My List' to 'Favorites'"

This reverts commit 5a787c532c4b53fb8f20cef58baf88f1afa28110.