fix(mobile): simplify PR review file scrolling - #4956
Conversation
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Executive SummaryThe new head commit ( Verification of the incremental change
Assumption: the iOS E2E S0–S7 evidence listed as pending in the PR description is validated outside this review; no runtime verification was performed in read-only mode. Files Reviewed (0 files changed since last review)
Previous Review Summaries (3 snapshots, latest commit 5ea408b)Current summary above is authoritative. Previous snapshots are kept for context only. Previous review (commit 5ea408b)Status: No Issues Found | Recommendation: Merge Executive SummaryThe incremental commit ( Verification of the incremental change
Assumption: the E2E harness for these fixtures lands separately in #4960, as stated in the PR description. Previously reported findings
Files Reviewed (2 files)
Previous review (commit 11eb1b7)Status: No Issues Found | Recommendation: Merge Executive SummaryIncremental review of the single new commit ( Verification of the incremental change
Assumption: no automated assertion pins the previous Previously reported findings
Files Reviewed (1 file)
Previous review (commit b23a2ff)Status: 3 Issues Found | Recommendation: Address before merge Executive SummaryNo correctness defects found in the scroll/dedupe refactor; the three findings are a silent no-op fallback for unresolvable navigator jumps, a now production-unused Overview
Issue Details (click to expand)SUGGESTION
Verified as correct
Assumption: the removed one-shot scroll-to-top ( Files Reviewed (15 files)
Reviewed by claude-opus-5 · Input: 28 · Output: 5.4K · Cached: 654.5K Review guidance: REVIEW.md from base branch |
The e2e harness changes belong to #4960.
5ea408b to
a395f28
Compare
What
Simplifies the mobile PR-review Files list while fixing duplicate paths and scrolling stalls.
scrollToIndexjump.Why
The list had repeated page-flattening code and a scroll subsystem that could not meaningfully park a navigator target. During pagination, both the item objects and
renderItemcallback changed, making FlashList re-render mounted diff cells while the user dragged.How
flattenFilePagesis now the shared first-occurrence-wins source of truth.scrollToIndexdirectly.maintainVisibleContentPositionremains disabled because height changes above the viewport previously caused jumps; it is only the recorded escalation if E2E proves necessary.Verification
pnpm run format:changedpnpm --dir apps/mobile formatpnpm --dir apps/mobile typecheckpnpm --dir apps/mobile lintpnpm --dir apps/mobile check:unusedpnpm --dir apps/mobile test— 294 files, 2,567 testsgit diff --checkVisual Changes
Pending iOS E2E screenshots for S2, S3, and S6.
Reviewers
Requested from repository history: @jeanduplessis and @St0rmz1.
Section final report (archived from scratch before cleanup)
BLOCKED
Blocker
Bot E2E could not reach the required verifier dispatch. The iOS bundle started three times and the Hermetic PR-review GitHub stub started successfully, but the required dev-only
githubApps.devSeedUserGithubTokenseed mutation could not be authenticated through the local fake-login flow.e2e-scenarios.md; no verifier was dispatched without the required seeded token.This blocks the required
VERIFICATION PASSED.sentinel and S0–S7 screenshots. The runbook requires a valid seeded GitHub token before PR-review entry flows can be verified. Remedy: repair or provide the sanctioned local fake-login/tRPC seed path, then re-run the iOS E2E bundle and all S0–S7.PR
pr-review-files-scroll-dd1eebf9fb3df fix(mobile): simplify PR review file scrollingb23a2ffdd test(mobile): add PR review file fixtures11eb1b7dc fix(mobile): align PR fixture metadataiscekic; reviewers requested:jeanduplessis,St0rmz1.Implemented and verified
pnpm run format:changedpnpm --dir apps/mobile formatpnpm --dir apps/mobile typecheckpnpm --dir apps/mobile lintpnpm --dir apps/mobile check:unusedpnpm --dir apps/mobile test— 294 files, 2,567 testsgit diff --checkNo findings.Kilobot triage
11eb1b7dc; its thread is resolved.buildItems: it remains the tested composition contract; thread resolved.Resources and temporary edits
GITHUB_API_BASE_URLwas removed from worktree.env.local.github-stub-env.patchin this scratch directory; no temporary edit remains in the product tree.Takeovers
slice-diff.shcould not process its staged deleted paths; the reviewer cleared the actual diff.Safest next action
Restore a sanctioned authenticated call to
githubApps.devSeedUserGithubToken, then run a fresh iOS E2E round using this scratch directory’se2e-scenarios.mdbefore continuing the PR completion gate.