React 19.2
Worth reading. Not worth a broad team rewrite.
Most teams do not need a sweeping migration. The practical gain is cleaner effect reasoning, better interruption handling, and fewer excuses for stale closure patches.
- Audit effects that still exist only to patch render logic.
- Pick one noisy subscription flow and test whether a React 19 hook cleanup reduces confusion.
- Delay broad rewrites until a real bug or maintenance win is obvious.
AI-generated pull requests
Use them for drafts. Review them like they are guilty.
The volume benefit is real, but the failure pattern is repetitive: copied state, weak async cleanup, blurry Next.js boundaries, and accessibility regressions hidden behind good-looking JSX.
- Require one behavior-level test for every AI-assisted UI diff.
- Check state ownership and effect intent before style or abstraction comments.
- Reject drafts that need multiple cleanup passes just to become understandable.
Router and architecture noise
Protect the server-client boundary before adding more tooling.
Teams are still losing more time to boundary confusion than to framework capability gaps. If your App Router split is messy, another helper layer usually makes review harder, not easier.
- Move data fetching back to server paths by default.
- Push interactive islands lower in the tree instead of marking large files with use client.
- Keep one architecture note per boundary rule so reviewers can enforce the same standard.