App bootstrap: TV manifest, StoganetApp, ServiceLocator skeleton#2
Conversation
|
Claude finished @koinsaari's task in 1m 48s —— View job PR Review: App bootstrap: TV manifest, StoganetApp, ServiceLocator skeleton
Findings🔴 Important — Hardcoded user-visible string in
Text("Stoganet TV")REVIEW.md lists this as "always Important if violated": every user-visible string must live in 🟡 Nit —
Everything else looks good
One 🔴 Important finding (hardcoded string); blocking until fixed. |
…leton Lock manifest essentials before feature work: leanback required, networking permissions, allowBackup=false (token blob never leaves device), splash theme, LEANBACK_LAUNCHER intent. StoganetApp owns a ServiceLocator and plants Timber on debug. Theme slimmed to dark-only; wizard color/typography deleted. Strings expanded for all MVP screens.
24e2c9a to
d1dc322
Compare
|
Claude finished @koinsaari's task in 1m 10s —— View job PR Review: App bootstrap: TV manifest, StoganetApp, ServiceLocator skeleton
No blocking issues.The 🔴 Important finding from the previous review pass has been resolved: Full findings
Ready to merge. ✅ |
Summary
leanbackrequired, networking permissions,allowBackup=false(encrypted token blob must not leave the device), splash theme,LEANBACK_LAUNCHERintent.StoganetApp(Application class) that plants Timber on debug and owns aServiceLocator— the manual DI container that subsequent PRs will populate withTokenStore,AuthInterceptor, repositories, etc.Color.kt/Type.kt.strings.xmlwith every user-visible string the MVP screens will need.backup_rules.xml+data_extraction_rules.xmlso neither cloud backup nor device-to-device transfer can exfiltrate the (later) Tink-encrypted token store.Test plan
./gradlew :app:assembleDebug— passes./gradlew detekt— clean./gradlew :app:installDebugon the Android TV emulator → app launches, system splash visible briefly, then "Stoganet TV" centered on black. App appears in the leanback launcher.