Docs: fix streaming SSR and fragment caching review feedback#2801
Docs: fix streaming SSR and fragment caching review feedback#2801
Conversation
- Use "React 19" consistently (was "React 18/19" in intro) - Note that async function components require RSC infrastructure - Clarify fragment cache key behavior for prerender vs client-only - Fix "full page reload" → "full-page reload" hyphenation - Note that ActionController::Live is included by ReactOnRailsPro::Stream Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
✅ Files skipped from review due to trivial changes (1)
WalkthroughDocumentation clarifications for React Server Components in streaming SSR patterns, Rails controller setup simplification, and minor wording adjustments for consistency. No functional code changes. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
ReviewOverall these are good, targeted clarifications. Three things worth addressing before merge: 1. React version inconsistency (streaming-ssr.md line 3) 2. RSC tutorial link is the wrong destination for non-RSC users (streaming-ssr.md line 78) 3. Fragment caching change (fragment-caching.md) looks good — the rewrite is clearer and the explicit distinction between |
Greptile SummaryThis PR is a focused documentation polish pass on Key changes:
Confidence Score: 5/5
Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Controller includes ReactOnRailsPro::Stream] --> B[ActionController::Live auto-mixed in]
A --> C[stream_view_containing_react_components called]
C --> D[render_to_string builds template]
D --> E{Component type?}
E -->|Async Server Component / RSC| F[Requires RSC infrastructure\nsee RSC tutorial]
E -->|Client Component with Suspense| G[Use React Query / SWR\n+ Suspense boundary]
C --> H[React renderToPipeableStream\nstreams HTML chunks]
H --> I[Browser renders updates\nwithout full-page reload]
I --> J[React Selective Hydration\nhydrates chunks as they arrive]
Reviews (1): Last reviewed commit: "Docs: fix streaming SSR and fragment cac..." | Re-trigger Greptile |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ada346d1e6
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
- Revert "React 19's" to "React 18/19's" for renderToPipeableStream (the API was introduced in React 18, not 19) - Clarify RSC tutorial link is for RSC users, not non-RSC streaming - Revert Cache Warming paragraph to previous clearer wording Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Review SummaryThe second commit addresses the key concerns from the previous review round well. Here's my assessment of the final state: What was addressed:
Remaining changes look good:
Minor observation: The code example in Step 2 ( Overall, the documentation is more accurate and clearer after these changes. Ready to merge. |
## Summary - Stamp `### [16.5.0.rc.0]` version header with today's date - Add 10 new changelog entries for PRs merged since v16.4.0 - Fix incomplete PR 2818 entry (missing author link) ### New entries added **Added:** - `create-react-on-rails-app --pro` support (PR 2818) - Global prerender env override `REACT_ON_RAILS_PRERENDER_OVERRIDE` (PR 2816) - `react_on_rails:sync_versions` rake task (PR 2797) - Pro/RSC setup checks in `react_on_rails:doctor` (PR 2674) **Changed:** - [Pro] Canonical env var for worker count is now `RENDERER_WORKERS_COUNT` (PR 2611) **Improved:** - Smoother `create-react-on-rails-app` and install generator flows (PR 2650) - Pro upgrade hint after install (PR 2642) **Fixed:** - Preserve runtime env vars across `Bundler.with_unbundled_env` (PR 2836) - Fix doctor prerender check and ExecJS display for Pro/RSC apps (PR 2773) - Fix doctor false positives for custom layouts (PR 2612) ### Skipped PRs (not user-visible) Docs-only: #2845, #2842, #2826, #2830, #2820, #2809, #2803, #2785, #2801, #2791, #2789, #2788, #2772, #2778, #2780, #2784, #2671, #2676, #2662, #2657, #2669 CI/internal tooling: #2825, #2817, #2819, #2812, #2815, #2810, #2808, #2807, #2634, #2798, #2761, #2760, #2658, #2639, #2667, #2656 ## Test plan - [x] Verified version header and diff links are correct - [x] Verified all entries follow changelog formatting conventions - [x] Verified file ends with newline - [ ] After merge, run `rake release` to publish 16.5.0.rc.0 🤖 Generated with [Claude Code](https://claude.com/claude-code) <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Documentation-only change updating `CHANGELOG.md` with a new `16.5.0.rc.0` section and compare links; no runtime code is modified. > > **Overview** > Adds a new `16.5.0.rc.0` (2026-03-25) section to `CHANGELOG.md`, consolidating recent PR entries under **Added/Changed/Improved/Fixed** and correcting the previously incomplete `--pro` CLI entry author attribution. > > Updates the bottom compare links so `[unreleased]` now compares from `v16.5.0.rc.0` and adds a link definition for `[16.5.0.rc.0]`. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 481a71c. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Release Notes - v16.5.0.rc.0 * **New Features** * Added sync_versions task for streamlined version management * Expanded doctor checks for Pro and RSC support * **Improvements** * Enhanced generator workflow and Pro upgrade guidance * Improved environment variable handling and preservation * **Bug Fixes** * Fixed detection issues with doctor tools and ExecJS/prerender functionality <!-- end of auto-generated comment: release notes by coderabbit.ai --> Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]>
Summary
Addresses remaining review feedback from #2789 as tracked in #2800:
renderToPipeableStream" to "React 19's" in intro to match prerequisites; updated "React 18's Selective Hydration" → "React's Selective Hydration"async () => {}function components require RSC infrastructure, with pointer to RSC tutorial for non-RSC streaming alternativesprerender: true(auto-invalidated via bundle digest) from client-only calls (manual cache key versioning required)ActionController::Liveis already included byReactOnRailsPro::StreamFixes #2800
Test plan
🤖 Generated with Claude Code
Note
Low Risk
Low risk documentation-only updates; main risk is minor confusion if guidance is incorrect, but no runtime code is changed.
Overview
Updates
docs/pro/streaming-ssr.mdto clarify thatasyncfunction components are a React Server Components pattern and points non-RSC streaming users to Suspense-friendly data fetching (and the RSC tutorial).Simplifies the Rails controller example by removing the requirement to explicitly include
ActionController::Live(noting it’s mixed in viaReactOnRailsPro::Stream), and applies small wording/consistency edits around Selective Hydration and “full-page reload” phrasing.Written by Cursor Bugbot for commit 1ecdaa3. This will update automatically on new commits. Configure here.
Summary by CodeRabbit