# Unspooled Focus Audit — Banned Files

## focusManager.moveFocus() usage (must remove)
- `app/src/main/java/.../ui/util/DpadThrottleModifier.kt` — HIGH, calls moveFocus directly
- `app/src/main/java/.../ui/screens/settings/SettingsScreen.kt` — single usage

## dpadRepeatThrottle / dpadVerticalFastScroll (must remove)
- `app/src/main/java/.../ui/util/DpadThrottleModifier.kt` — custom throttle
- `app/src/main/java/.../ui/util/DpadFastScrollModifier.kt` — custom fast scroll

## Local isFocused state (37 files — must convert to InteractionSource)
21 screen files + 16 component files including:
- UnspooledSidebar.kt, NetflixSideNavigation.kt, CircularRailNavigation.kt
- NetflixMediaCard.kt, ContinueWatchingCard.kt, FocusScalingCard.kt
- ModernHomeContent.kt, UnspooledFocusIndicator.kt
- All detail/player/settings/profiles screens

## Correct InteractionSource usage (only 2 files — expand these)
- `app/src/main/java/.../ui/components/topbar/HomeTopBar.kt`
- `app/src/main/java/.../ui/components/tv/TvFormComponents.kt`

## focusProperties usage (3 files — only SkipIntroButton does it right)
- CircularRailNavigation.kt — defines directions but no `enter`
- SkipIntroButton.kt — correct
- NextEpisodeEndPromptOverlay.kt — correct

## onPreviewKeyEvent / onKeyEvent (23 files — audit for conflicts)
Multiple files have both systems active simultaneously, causing event consumption conflicts.

## Multiple sidebars (3 competing implementations)
- UnspooledSidebar (expandable rail)
- NetflixSideNavigation (thin icon rail)
- CircularRailNavigation (curved rail)
→ Consolidate to one: UnifiedSidebar (Phase C output)
