Skip to content

Bump React on Rails packages to 17.2.0 rc.1 - #853

Merged
justin808 merged 1 commit into
masterfrom
justin808-claude/5121-react-on-rails-17-2-0-rc-1
Oct 8, 2026
Merged

justin808 merged 1 commit into
masterfrom
justin808-claude/5121-react-on-rails-17-2-0-rc-1

Conversation

@justin808

@justin808 justin808 commented Oct 8, 2026 •

Copy link
Copy Markdown
Member

🤖 Claude Code · Anthropic · claude-opus-5-5 · medium

The tutorial now runs the published React on Rails 17.2.0 rc.1 packages, so release gate shakacode/react_on_rails#5121 can validate the candidate on this Pro and RSC app. The Pro gem and the Pro and Node renderer npm packages are pinned to rc.1; the core gem and package follow through the lockfiles. React and ReactDOM stay on 19.2.8 with react-on-rails-rsc 19.3.0. Merged as 90cdda6.

PR prepared with Shaka.

Code Walkthrough · Post-implementation verification

Known gaps

The README version targets still list 17.1.0, as they did before this change. Updating them is left out to keep this bump to the packages only.

The review app for this PR was removed after its smoke passed, so there is no live preview. One request to it returned a 504 after about 11 hours idle and the following requests succeeded; the cause is unclassified.

Check Result
Frozen installs PASS: yarn install --frozen-lockfile and frozen bundle install on a clean checkout of 7f9a8ab
Local validation PASS: RuboCop, ESLint, test build, 80 RSpec examples, 16 Jest tests, development build
Hosted CI PASS: Rspec CI, JS CI, Lint CI, and required Demo fleet smoke on 7f9a8ab
Local browser smoke PASS: root server render, RSC page, toggle, Refresh, Simulate Error, Retry
Review app smoke PASS on 7f9a8ab: root and RSC page 200, hydration, toggle, Refresh, Simulate Error, Retry; container ran rc.1 with React 19.2.8 and react-on-rails-rsc 19.3.0; app then deleted
Independent review Local adversarial review of 7f9a8ab: no findings; Claude, Greptile, and CodeRabbit raised nothing actionable
Execution provenance
Field Value
Machine alias m5
Task source description
Workflow version c5ad73d
Recommended model / effort claude-opus-5-5 / low
Active model / effort claude-opus-5-5 / medium
Usage and cost · $12.61+ estimated
Report USD Input Cached input Output Reasoning Cache writes
claude‑opus‑5‑5 implementation $12.28+ 210 22.7M 74K 10.2K 824K
claude‑opus‑5‑5 review $0.33 4 33.7K 2.2K 543 34.9K
Total $12.61+

+ some usage not reported, so the amount is a minimum.

What the columns mean
  • USD: estimated cost at the provider’s published list prices, not an invoice.
  • Input: tokens sent to the model; Codex and Cursor count cached input here too, Claude does not.
  • Cached input: input read back from the provider’s prompt cache, which is billed at a lower rate.
  • Output: tokens the model wrote; Codex, Claude, and Pi count reasoning here too, OpenCode does not.
  • Reasoning: tokens the model spent reasoning before the answer.
  • Cache writes: input stored in the prompt cache so later turns can reuse it.
How each report was measured and priced

claude‑opus‑5‑5 implementation

Rate card: installed Shaka.

Anthropic API list prices, verified 2026-09-23. Uncached input, cache reads and cache writes are separate charges, and a 1-hour cache write costs more than a 5-minute one. Standard-speed responses are priced; fast mode is priced for Opus models with a published rate.

Partial estimate: 2 of 98 responses unpriced (Inconsistent token subsets).
Sources: Anthropic pricing.

Anthropic input excludes cached input and cache writes; reasoning output is part of output.

Local adversarial reviewer usage: UNKNOWN. External reviewer/tool-model usage: UNKNOWN.

Native usage is PARTIAL. Scope: responses at or after 2026-10-08T08:30:00Z (whole-second sources include the cutoff second).

claude‑opus‑5‑5 review

Rate card: installed Shaka.

Anthropic API list prices, verified 2026-09-23. Uncached input, cache reads and cache writes are separate charges, and a 1-hour cache write costs more than a 5-minute one. Standard-speed responses are priced; fast mode is priced for Opus models with a published rate.

Sources: Anthropic pricing.

Anthropic input excludes cached input and cache writes; reasoning output is part of output.

Local adversarial reviewer usage: included below. External reviewer/tool-model usage: UNKNOWN.

Native usage is PARTIAL. Scope: all turns in selected sources.

Rate card: installed Shaka.

Anthropic API list prices, verified 2026-09-23. Uncached input, cache reads and cache writes are separate charges, and a 1-hour cache write costs more than a 5-minute one. Standard-speed responses are priced; fast mode is priced for Opus models with a published rate.

Partial estimate: 2 of 98 responses unpriced (Inconsistent token subsets).
Sources: Anthropic pricing.

Anthropic input excludes cached input and cache writes; reasoning output is part of output.

Local adversarial reviewer usage: UNKNOWN. External reviewer/tool-model usage: UNKNOWN.

Native usage is PARTIAL. 98 responses. Scope: responses at or after 2026-10-08T08:30:00Z (whole-second sources include the cutoff second).

Shaka settings used

Bound to the current candidate commit.

Local files remain local. This reports operation settings and cannot restore them. It does not prove earlier checks ran. Private merge.preference grants no Auto authority. Private trials default to Ask; explicit user authorization and live required gates govern merging.

Setting Before push: validation Review Current merge input (not evidence)
source trusted/team trusted/team trusted/team
source.layout legacy legacy legacy
installation.source revision revision revision
merge.preference ask ask ask
merge.private_trial_default UNKNOWN UNKNOWN UNKNOWN
review.required none none none
review.ci_review_wait one one one
overrides.command validate UNKNOWN UNKNOWN
overrides.effort UNKNOWN UNKNOWN UNKNOWN
overrides.reviewer UNKNOWN anthropic/claude UNKNOWN
wip.include_locations true true true
opening_check.external_enabled true true true
pr_description.show_shaka_credit true true true
merge.limits.max_changed_files 29 29 29
merge.limits.max_changed_lines 999 999 999
merge.limits.max_commits 9 9 9
prose_limits.max_sentence_words 35 35 35
prose_limits.max_paragraph_words 100 100 100
prose_limits.max_description_words 300 300 300
prose_limits.words_per_changed_line 4 4 4
commands REDACTED REDACTED REDACTED
paths REDACTED REDACTED REDACTED
review.prompts REDACTED REDACTED REDACTED
review.ci_review_jobs REDACTED REDACTED REDACTED
merge.required_checks REDACTED REDACTED REDACTED
branches REDACTED REDACTED REDACTED
base_branch REDACTED REDACTED REDACTED
overrides.arguments REDACTED REDACTED REDACTED
overrides.model REDACTED REDACTED REDACTED
local_changes REDACTED REDACTED REDACTED
defaults_changed UNKNOWN UNKNOWN UNKNOWN
source.revision 6dc262d 6dc262d 6dc262d
source.configuration trusted/team trusted/team trusted/team
installation.version 0.1.0.pre.1 0.1.0.pre.1 0.1.0.pre.1
installation.revision REDACTED REDACTED REDACTED

Summary by CodeRabbit

  • Chores
    • Updated React on Rails Pro and its Node renderer to version 17.2.0-rc.1.

Pin the react_on_rails_pro gem to 17.2.0.rc.1 and the react-on-rails-pro
and react-on-rails-pro-node-renderer npm packages to 17.2.0-rc.1. The
core react_on_rails gem and react-on-rails package move with them through
the lockfiles. React, ReactDOM, and react-on-rails-rsc are unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown

🚀 Quick Review App Commands

Welcome! Here are the commands you can use in this PR:
They require the repository to have cpflow review apps configured, including the CPLN_TOKEN_STAGING secret.

+review-app-deploy

Deploy your PR branch for testing.

+review-app-delete

Remove the review app when done.

+review-app-help

Show detailed instructions, environment setup, and configuration options.

Comment +review-app-help for full setup details.

@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown

No description provided.

@coderabbitai

coderabbitai Bot commented Oct 8, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 0834be78-c58e-43cc-b291-92ed7df0aa4f
📥 Commits

Reviewing files that changed from the base of the PR and between 6dc262d and 7f9a8ab.

⛔ Files ignored due to path filters (2)
  • Gemfile.lock is excluded by !**/*.lock
  • yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (2)
  • Gemfile
  • package.json

Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 3 remain after this review.


Walkthrough

The Gemfile and package.json now specify React on Rails Pro version 17.2.0.rc.1, replacing version 17.2.0.rc.0.

Changes

React on Rails Pro dependency update

Layer / File(s) Summary
Update dependency versions
Gemfile, package.json
The Gemfile and package.json use version 17.2.0.rc.1 for the listed React on Rails Pro dependencies.

Priority: ⬇️ Low

Estimated code review effort: 1 (Trivial) | ~3 minutes

Change: Other

Merge Risk: ⚪ Minimal · up to 7f9a8

The dependency declarations and lockfiles are aligned, so this update presents no identified merge-blocking risk.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the dependency upgrades from React on Rails 17.2.0 rc.0 to 17.2.0 rc.1.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@claude

claude Bot commented Oct 8, 2026

Copy link
Copy Markdown

Reviewed: this is a clean, consistent bump of react_on_rails_pro / react-on-rails-pro / react-on-rails-pro-node-renderer from 17.2.0 rc.0 to rc.1. Gemfile, Gemfile.lock, package.json and yarn.lock all agree, and no stale rc.0 references remain in the repo. The yarn.lock integrity hashes changed together with the versions.

Notes:

  • This is a prerelease, so it's fine for a tutorial app but not something to ship to production without a check.
  • I didn't run the build or tests. Please confirm CI is green (rspec plus an SSR/node-renderer smoke test) before merging.
  • I found no security or performance concerns in the diff.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-08T08:52:25.865637Z 7f9a8ab PR opened
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@justin808

Copy link
Copy Markdown
Member Author

+review-app-deploy

@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown

No description provided.

@justin808

Copy link
Copy Markdown
Member Author

Local Adversarial Review

Reviewed revision: 7f9a8ab

Outcome: No open findings; closed and optional findings are in history.

Coverage: anthropic/claude: Supplied diff only; unchanged source and test execution are unavailable to this reviewer.

Usage and attribution in the PR description.

Review evidence and history

Commit: Bump React on Rails packages to 17.2.0 rc.1

Finding details

Review coverage:

Coverage excerpts may be incomplete or misidentified; inspect the original reports.

  • anthropic/claude: Supplied diff only; unchanged source and test execution are unavailable to this reviewer.

Unverified report excerpt · anthropic/claude:

- **Inspected:** only the supplied diff, covering `Gemfile`, `Gemfile.lock`, `package.json` and `yarn.lock`.
- **Not inspected:** the checkout itself. The file tools are confined to the session's temp directory, so every read of the worktree path was refused, and Git is unavailable.
- **Tests run:** none. No `bundle exec rspec`, `bundle exec rubocop` or install was run, and candidate code was not executed.
- **Missing context:**
  - Whether any file outside the diff still restates `17.2.0.rc.0` / `17.2.0-rc.0` (README, docs, Dockerfile, `.controlplane/`, CI workflows, initializers, a second lockfile such as `pnpm-lock.yaml`).
  - Whether the `resolved` hashes and `integrity` values in `yarn.lock` match what the npm registry publishes for rc.1; this needs network access.
  - The upstream changelog for rc.0 → rc.1, so behaviour changes in the gem or node renderer are unassessed.
  - Whether `Gemfile.lock` has a `CHECKSUMS` section that needed updating; none appears in the hunks shown.

Execution metadata

Round Commit Reviewer Model Effort Prompt Findings Tokens Cost
1 7f9a8ab anthropic/claude claude-opus-5-5 UNKNOWN Shaka default · criteria 6dc262d 0 UNKNOWN UNKNOWN
Round 1 · 7f9a8ab · anthropic/claude · effort UNKNOWN · 0 findings

Repository criteria: supplied — AGENTS.md at 6dc262d (trusted block in the request).

Coverage

  • Inspected: only the supplied diff, covering Gemfile, Gemfile.lock, package.json and yarn.lock.
  • Not inspected: the checkout itself. The file tools are confined to the session's temp directory, so every read of the worktree path was refused, and Git is unavailable.
  • Tests run: none. No bundle exec rspec, bundle exec rubocop or install was run, and candidate code was not executed.
  • Missing context:
    • Whether any file outside the diff still restates 17.2.0.rc.0 / 17.2.0-rc.0 (README, docs, Dockerfile, .controlplane/, CI workflows, initializers, a second lockfile such as pnpm-lock.yaml).
    • Whether the resolved hashes and integrity values in yarn.lock match what the npm registry publishes for rc.1; this needs network access.
    • The upstream changelog for rc.0 → rc.1, so behaviour changes in the gem or node renderer are unassessed.
    • Whether Gemfile.lock has a CHECKSUMS section that needed updating; none appears in the hunks shown.

Findings

no findings

Observations (not classed, not counted):

  • Internal consistency holds within the diff.
    • Gemfile:9 pins react_on_rails_pro to 17.2.0.rc.1, and Gemfile.lock:353 and Gemfile.lock:543 agree.
    • The transitive react_on_rails moves in lockstep at Gemfile.lock:346 and Gemfile.lock:360.
    • package.json:85-86 pins both npm packages to 17.2.0-rc.1, and yarn.lock:8965, yarn.lock:8978 and yarn.lock:8996 agree, including the react-on-rails "17.2.0-rc.1" dependency at yarn.lock:8983.
    • Gem and npm versions stay matched, which React on Rails Pro requires.
    • No rc.0 entry is left behind in the shown hunks.
  • Contract drift: none visible in the diff. Whether a doc or config elsewhere still names rc.0 is unverified.
  • Security and trust: no gate or permission changes. All three resolved URLs stay on registry.npmjs.org, and the pins remain exact rather than ranges. The new integrity hashes are candidate-supplied and I could not check them against the registry.
  • Tests: no test in the diff fails if this change is reverted, which is expected for a pure version bump. Server rendering, the node renderer and RSC behaviour under rc.1 are untested by this change and rely on the existing suite and CI, which I did not run.
  • Simplicity: nothing to delete; the diff is the minimum for this bump.

REVIEWED 7f9a8ab BY anthropic/claude EFFORT UNKNOWN FINDINGS 0

REVIEWED 7f9a8ab BY anthropic/claude EFFORT UNKNOWN FINDINGS 0

@github-actions

github-actions Bot commented Oct 8, 2026 •

Copy link
Copy Markdown

🎉 Deploy Complete!

Open Review App

Deployment successful for PR #853, commit 7f9a8ab

🎮 Control Plane Console
📋 View Completed Action Build and Deploy Logs

@github-actions
github-actions Bot temporarily deployed to review/qa-react-webpack-rails-tutorial-853 October 8, 2026 08:53 Destroyed
@greptile-apps

greptile-apps Bot commented Oct 8, 2026 •

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

[High risk] Bumps React on Rails framework packages to release candidate.

The PR appears safe to merge; no actionable issue was found.

What we checked:

  • Package versions stay aligned: Both lockfiles contain the exact React on Rails version required by the updated Pro packages.

Summary

Updates the React on Rails packages from 17.2.0 rc.0 to 17.2.0 rc.1.

  • Updates the Ruby gems, JavaScript Pro package, and Node renderer together.
  • Keeps both lockfiles aligned with the new versions.
  • Leaves React, ReactDOM, and react-on-rails-rsc unchanged.
  • No actionable issues found. Installs and runtime tests were not run.

Reviews (1) · Last reviewed commit: "Bump React on Rails packages to 17.2.0 r..." · Reviewed by Greptile

@justin808 justin808 left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 Claude Code · Anthropic · claude-opus-5-5 · medium

Code Walkthrough

The app installs React on Rails 17.2.0 rc.1 in place of rc.0, with no application code changed.

Ruby

The Gemfile pin moves react_on_rails_pro to 17.2.0.rc.1. The Pro gem requires the matching core gem exactly, so the lockfile moves react_on_rails with it. No other gem version changes; a conservative bundle update had also moved two unrelated gems, and those were reverted.

JavaScript

The Pro package pin and the Node renderer pin move to 17.2.0-rc.1. react-on-rails-pro depends on the same core version, so yarn.lock moves react-on-rails too. React, ReactDOM, react-server-dom-webpack 19.2.8 and react-on-rails-rsc 19.3.0 stay as they were, and rc.1 still accepts that RSC version as a peer.

Validation, risk, and rollback

Frozen installs and the full local CI script pass on this commit. Hosted checks pass too: Rspec CI, JS CI, Lint CI, and the required smoke / Demo fleet smoke. The claude-review and Greptile Review gates completed with no actionable findings.

Server rendering, the RSC page, its toggle, Refresh, the simulated error, and Retry work locally and on the review app. The risk is limited to behavior changes inside the release candidate. Reverting this commit returns the app to rc.0.

Walkthrough for commit 7f9a8ab35fb519423a85a30b4d26adc7e901509c. This is a COMMENT, not an approval.

@justin808

Copy link
Copy Markdown
Member Author

🤖 Codex · OpenAI · gpt-6.1-sol (configured) · medium

Post-implementation validation

Recommendation: Proceed

The change gives release maintainers evidence that the published rc.1 packages work together in the existing Pro and RSC tutorial, while keeping the reference app reproducibly pinned to that candidate. Its one-commit, four-file scope matches the requested outcome and adds no architectural burden. The reported validation supports this app’s release gate; it does not establish compatibility across every consumer application.

Next action (task owner): Merge this PR and record its pinned-head validation in the rc.1 release gate.

Head: 7f9a8ab35fb519423a85a30b4d26adc7e901509c

Unresolved concerns: none

Supporting analysis and execution details

Conclusion: Proceed

The commit matches the planned four-file dependency update, with no new configuration, abstractions, application behavior, or unrelated dependencies.

The packet reports clean frozen installs, passing local and hosted checks, and working SSR, RSC interactions, error fallback, and recovery on the deployed review app.

Validation retries addressed host conditions, and unrelated lockfile updates were removed before commit. This does not indicate approach-level review churn.

Alternative considered: Keeping rc.0 would lose validation of the published rc.1 packages in this reference app. Existing tests and browser checks already provide the needed validation without additional implementation.

observed model: UNKNOWN; configured model: gpt-6.1-sol · recorded effort: medium

Prompt: Shaka default.

[
  {
    "configuration": [
      "openai",
      "gpt-6.1-sol",
      "UNKNOWN",
      "medium"
    ],
    "usage": {
      "input_tokens": 18028,
      "cached_input_tokens": 12288,
      "cache_write_input_tokens": 0,
      "output_tokens": 283,
      "reasoning_output_tokens": 52,
      "total_tokens": 18311
    }
  },
  {
    "configuration": [
      "openai",
      "gpt-6.1-sol",
      "UNKNOWN",
      "medium"
    ],
    "usage": {
      "input_tokens": 25202,
      "cached_input_tokens": 12288,
      "cache_write_input_tokens": 0,
      "output_tokens": 374,
      "reasoning_output_tokens": 85,
      "total_tokens": 25576
    }
  }
]

Ruby verified report shape and head binding. The reviewer judged value; the task owner handles concerns and merge readiness. This does not attest to technical review.

@justin808 justin808 added the awaiting-merge-approval Ready under Ask: merge this commit or approve it so the agent merges label Oct 8, 2026
@justin808

Copy link
Copy Markdown
Member Author

Squash commit message for 7f9a8ab. Paste the title and the body into GitHub's squash merge boxes.

Bump React on Rails packages to 17.2.0 rc.1 (#853)
Pin the react_on_rails_pro gem to 17.2.0.rc.1 and the react-on-rails-pro
and react-on-rails-pro-node-renderer npm packages to 17.2.0-rc.1 so the
tutorial validates the release candidate. The core react_on_rails gem
and react-on-rails package move with them through the lockfiles. React
and ReactDOM stay on 19.2.8 with react-on-rails-rsc 19.3.0, and no other
dependency changes.

Validated with frozen installs, lint, test and development builds, 80
RSpec examples, 16 Jest tests, hosted CI, and a browser smoke of server
rendering and the RSC page locally and on the review app.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>

@justin808

Copy link
Copy Markdown
Member Author

+review-app-delete

@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown

No description provided.

@github-actions

github-actions Bot commented Oct 8, 2026 •

Copy link
Copy Markdown

✅ Review App Deleted

Review app for PR #853 is deleted

🎮 Control Plane Console
📋 View Workflow Logs

@justin808
justin808 merged commit 90cdda6 into master Oct 8, 2026
12 checks passed
@justin808
justin808 deleted the justin808-claude/5121-react-on-rails-17-2-0-rc-1 branch October 8, 2026 21:24
@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown

No description provided.

@github-actions

github-actions Bot commented Oct 8, 2026 •

Copy link
Copy Markdown

✅ Review App Deleted

Review app for PR #853 is deleted

🎮 Control Plane Console
📋 View Workflow Logs

@justin808 justin808 removed the awaiting-merge-approval Ready under Ask: merge this commit or approve it so the agent merges label Oct 8, 2026

This branch was successfully deployed

No deployments
review/qa-react-webpack-rails-tutorial-853 — 7f9a8ab3 Deployed Oct 8, 2026 by github-actions[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant