improve: native iOS look with stock SwiftUI navigation, forms, chat, and talk visualizer#99231
Conversation
|
Codex review: needs maintainer review before merge. Reviewed July 3, 2026, 9:10 PM ET / 01:10 UTC. Summary PR surface: Other -259. Total -259 across 27 files. Reproducibility: not applicable. This PR implements a visual/product-direction feature rather than fixing a reproducible existing bug. The behavior is demonstrated by simulator screenshots, a Talk waveform recording, source inspection, and live PR checks. Review metrics: none identified. Root-cause cluster Members:
Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Have the iOS/UI owners decide whether to land this current head as the implementation for #99195 after the remaining required CI finishes cleanly. Do we have a high-confidence way to reproduce the issue? Not applicable: this PR implements a visual/product-direction feature rather than fixing a reproducible existing bug. The behavior is demonstrated by simulator screenshots, a Talk waveform recording, source inspection, and live PR checks. Is this the best way to solve the issue? Unclear until owner acceptance: the implementation is coherent and the previous mechanical blocker is fixed, but the broad iOS native-reskin direction still needs product/design approval before merge. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 87d88878787b. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Other -259. Total -259 across 27 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
11a5bb6 to
ac7a523
Compare
|
@clawsweeper re-review Addressed all review findings on the latest push (6b11de8):
|
|
🦞🧹 I asked ClawSweeper to review this item again. |
Dependency graph guard clearedThis PR no longer has blocked dependency graph changes. A future dependency graph change requires a fresh
|
|
Maintainer repair and land-ready proof for exact head
Local proof:
Exact-head hosted proof:
The public PR body retains the contributor's six-screen before/after table. Maintainer simulator screenshots were inspected locally; no new screenshot files were committed or uploaded. Talk proof covers state projection and controls, not a physical microphone/audio round-trip. Ready to merge. |
|
Merged via squash.
|
Closes #99195
What Problem This Solves
The iOS app mixed custom cards, hand-rolled headers, capsule controls, and bespoke settings rows with native SwiftUI navigation. The result looked inconsistent across tabs and created parallel presentation paths that were harder to keep correct on both iPhone and iPad.
Why This Change Was Made
Uses stock SwiftUI navigation bars,
List,Form,Section,LabeledContent,Toggle,Picker,ContentUnavailableView, bordered controls, native Chat chrome, and a state-driven Talk waveform. The maintainer pass also:The 27-file repaired diff removes more code than it adds: 1,857 additions and 2,116 deletions, including tests and generated native-i18n inventory.
User Impact
Navigation, settings, Chat, Talk, and onboarding now use coherent native iOS structure on both phone and tablet. Settings pushes and back navigation behave normally, appearance changes apply app-wide without blanking the iPad detail pane, sensitive capability disclosure remains visible during onboarding, and Talk state remains owned by the existing state model.
Evidence
pnpm native:i18n:check: 2,461 entries, unchanged.pnpm apple:i18n:check: 2 catalogs, 46 keys.git diff --checkpass.The Talk simulator proof validates the rendered state projection and controls; it does not claim a physical microphone/audio round-trip.
Before / after (iPhone 17 sim, iOS 26.2)