Repository navigation
ENG-12238: document Reflex app scaling and recovery - #7570
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
[Low impact] The PR appears safe to merge; no actionable new issues were found. SummaryAdds a scaling guide covering replaceable backends, durable report jobs, regional state, database routing, Redis recovery, and telemetry.
Reviews (6) · Last reviewed commit: "Merge branch 'main' into codex/eng-12238..." · Reviewed by Greptile |
Merging this PR will not alter performance
|
FarhanAliRaza
left a comment
There was a problem hiding this comment.
I checked out the PR head (e29bd80) and ran the docs dev server with the changed pages: scaling, self-hosting, performance and execution, and MCP overview. I checked the scaling page in Chrome at desktop width, at narrow width, and in dark mode. I tested keyboard scroll on the diagram regions, every link on the page, and the console.
I compared the technical claims with the code: the Redis URL handling in prerequisites.py, Granian selection and GRANIAN_WORKERS in exec.py, the state schema hashes in state.py, the metric names in reflex_base/otel.py, and the reflex-otel manifests at their release tags. These claims match the code.
I also checked the earlier review comments against the new commit. The inline comments are the remaining requested changes.
There was a problem hiding this comment.
All reported issues were addressed across 2 files (changes from recent commits).
Tip: Review your code locally with the cubic CLI to iterate faster.
View guided diff | Turn on auto-fix | Re-trigger cubic
This adds the scaling guide to the existing documentation, covering replaceable backends, durable report jobs, regional session state, primary/read-replica routing, Redis recovery, and OpenTelemetry compatibility.
The architecture and job-lifecycle diagrams distinguish request, replication, and queue traffic. Redis guidance uses an ordinary provider-managed failover endpoint. The runnable Reflex state/UI example preserves retry keys, reads authorized status, and rejects stale responses. Report selection is tied to owner/session identity, and only an explicit New report action creates a key; Submit with no selected key recovers an existing job. Database/outbox/broker durability remains an explicit application contract.
The guide separates persisted-state and frontend compatibility hashes, links to the canonical self-hosting migration warning, and gives the dependency constraints for
reflex-otel==0.2.0. Full-size diagram links work with both an empty frontend path and/docs.Validation:
asyncio.run, so no async pytest plugin is needed.718849767258323166e9a2edc68d233e04504d60, including Linux pre-commit./hosting/scalingprerendering, 23 sitemap/SEO checks, and five frontend regressions per job.MCP rollout sequencing: Flexgen PR #6287 is already merged and still pins the earlier
e29bd80cdbundle. The fixture follow-up remains local. After the source revision is approved, update the real dependency pin and lock together with that fixture, reinstall from the lock, and rerun bundled-guide retrieval checks. Publishing the website alone does not refresh MCP.ENG-12238 · Existing draft