Round 2 release candidate: Home, Discover, trailer, crash fix and stock screens #64

Merged
justinzeus merged 25 commits from fm/tv-round2-rc into fm/tv-round2 2026-11-07 21:14:15 +01:00
Owner

Round 2 release candidate: the five reviewed lane PRs merged together as ONE unit on top of fm/tv-round2 (2b142af8). This branch is the exact commit that was tested, built and signed, commit 5fb37886bb2db17fbcdb3c26df01ec74844f2b40.

Lane PRs contained (all heads reviewed green on the exact head)

PR Lane Head Review statuses on that head
#58 Discover 79f64f6e18aba3eff2938831061d1d53532ba98e review/code-claude success, review/design-claude success
#59 Home f375d88030abd14bf7b6b262792af6f5e20b3acf review/code-claude success, review/design-claude success
#61 Trailer launch 8be769b67c176dd07f8809deb03c8f74a79742bf review/code-claude success, review/design-claude success
#62 Duplicate lazy-key crash fix 64432b0032049fde109baa628514190cdf691b42 review/code-claude success, review/design-claude success
#63 Stock server/profile screens a5b5e9201741693b4d4f922ae9e6d945b9ff58ce review/code-claude success, review/safety-opus success

Full-suite result on exactly this commit

make test once, no retries, no exclusions: BUILD SUCCESSFUL in 7m43s. wolfskin-design 254 + app 762 = 1016 tests, 1016 passed, 0 failed, 0 skipped.

Opt build verification (same commit)

assembleDefaultOptimized offline, all four APKs in one run (apk-opt12): versionCode 68 (installed Opt is 66), versionName 1.1.0-194-g5fb37886, package org.justinvisser.wolfskin.tv.opt, label Wolfskin (Opt), not debuggable, signer SHA-256 182bac72e292b9ea4d3d4e6383f92eb2161fa28ba5afcff0337cb7d5a9d5341d (matches), baseline.prof and baseline.profm present, no fixture assets, no missing_rules.txt.

Merge conflicts

Only one content conflict: wolfskin-design/src/main/java/org/justinvisser/wolfskin/design/DiscoverScreen.kt (Home vs Discover). Resolution keeps Home's remembered-viewport/active-entry ownership (DisposableEffect(focus, entryActive) with if (entryActive) shell.contentFocus = focus) and adds Discover's lane memory reset (resetLaneMemory() in onDispose when the current tab is not discover). Hero motion and Details destination focus from Discover are unchanged. The other four heads merged without conflicts.

Closes: the five lane PRs are contained in this merge (#58, #59, #61, #62, #63).

Round 2 release candidate: the five reviewed lane PRs merged together as ONE unit on top of `fm/tv-round2` (2b142af8). This branch is the exact commit that was tested, built and signed, commit `5fb37886bb2db17fbcdb3c26df01ec74844f2b40`. ## Lane PRs contained (all heads reviewed green on the exact head) | PR | Lane | Head | Review statuses on that head | |---|---|---|---| | https://git.justinvisser.org/justinzeus/wolfskin/pulls/58 | Discover | `79f64f6e18aba3eff2938831061d1d53532ba98e` | review/code-claude success, review/design-claude success | | https://git.justinvisser.org/justinzeus/wolfskin/pulls/59 | Home | `f375d88030abd14bf7b6b262792af6f5e20b3acf` | review/code-claude success, review/design-claude success | | https://git.justinvisser.org/justinzeus/wolfskin/pulls/61 | Trailer launch | `8be769b67c176dd07f8809deb03c8f74a79742bf` | review/code-claude success, review/design-claude success | | https://git.justinvisser.org/justinzeus/wolfskin/pulls/62 | Duplicate lazy-key crash fix | `64432b0032049fde109baa628514190cdf691b42` | review/code-claude success, review/design-claude success | | https://git.justinvisser.org/justinzeus/wolfskin/pulls/63 | Stock server/profile screens | `a5b5e9201741693b4d4f922ae9e6d945b9ff58ce` | review/code-claude success, review/safety-opus success | ## Full-suite result on exactly this commit `make test` once, no retries, no exclusions: BUILD SUCCESSFUL in 7m43s. wolfskin-design 254 + app 762 = **1016 tests, 1016 passed, 0 failed, 0 skipped**. ## Opt build verification (same commit) `assembleDefaultOptimized` offline, all four APKs in one run (apk-opt12): versionCode 68 (installed Opt is 66), versionName `1.1.0-194-g5fb37886`, package `org.justinvisser.wolfskin.tv.opt`, label `Wolfskin (Opt)`, not debuggable, signer SHA-256 `182bac72e292b9ea4d3d4e6383f92eb2161fa28ba5afcff0337cb7d5a9d5341d` (matches), baseline.prof and baseline.profm present, no fixture assets, no missing_rules.txt. ## Merge conflicts Only one content conflict: `wolfskin-design/src/main/java/org/justinvisser/wolfskin/design/DiscoverScreen.kt` (Home vs Discover). Resolution keeps Home's remembered-viewport/active-entry ownership (`DisposableEffect(focus, entryActive)` with `if (entryActive) shell.contentFocus = focus`) and adds Discover's lane memory reset (`resetLaneMemory()` in `onDispose` when the current tab is not discover). Hero motion and Details destination focus from Discover are unchanged. The other four heads merged without conflicts. Closes: the five lane PRs are contained in this merge (https://git.justinvisser.org/justinzeus/wolfskin/pulls/58, https://git.justinvisser.org/justinzeus/wolfskin/pulls/59, https://git.justinvisser.org/justinzeus/wolfskin/pulls/61, https://git.justinvisser.org/justinzeus/wolfskin/pulls/62, https://git.justinvisser.org/justinzeus/wolfskin/pulls/63).
justinzeus added 25 commits 2026-11-07 21:10:03 +01:00
Retain destination focus in the initial title loading regression
Some checks failed
review/code-claude Code review: approve, no blocking finding (9 non-blocking notes)
review/design-claude Blocked: hero copy counter-fade overlaps text; approved sequential hand-off differs (B1)
7bfa431350
Synchronize saved-picker test with Android main queue
All checks were successful
review/code-claude No blocking findings; 8 non-blocking notes (see PR comment)
review/design-claude Design review PASS: no blocking finding; 8 non-blocking notes
5811ab0555
Restore sequential hero copy and first-appearance entry
All checks were successful
review/code-claude Code APPROVE: sequential copy hand-off, no blocker
review/design-claude Design PASS: copy hand-off matches approved frames/tokens
79f64f6e18
Cover outgoing title and person Back ownership
Some checks failed
review/code-claude Code APPROVE: Home delta fine, no blocker
review/design-claude Design BLOCK: picker gear moved without approval (B1)
a27e922675
Reserve Home hero primary action space
All checks were successful
review/code-claude Code APPROVE: delta f375d880 fine
review/design-claude Design PASS: gear restored, hero buttons stationary
f375d88030
Launch trailers with the vnd.youtube authority form SmartTube can parse
All checks were successful
review/code-claude Code APPROVE: no blocking finding
review/design-claude Design PASS: no visible change, no blocker
8be769b67c
Route Wolfskin setup through the household profile picker
All checks were successful
review/code-claude Opus review PASS: no blockers, 10 non-blocking notes
review/safety-opus Opus review PASS: no blockers, 10 non-blocking notes
a5b5e92017
Compute lazy list keys from the list the lazy block renders
All checks were successful
review/code-claude Code APPROVE: no blocking finding
review/design-claude Design PASS: no visible change, no blocker
64432b0032
final merge dup-lazy-key
All checks were successful
gate/round2-candidate full make test 1016/1016 (7m43s, no retries), Opt build versionCode 68 signer ok
5fb37886bb
justinzeus merged commit b51dced5fe into fm/tv-round2 2026-11-07 21:14:15 +01:00
Sign in to join this conversation.
No reviewers
No labels
exploring
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: justinzeus/wolfskin#64
No description provided.