Skip to content

docs: Replace atomic mutations with ACID integrity concept - #4070

Open
ntucker wants to merge 6 commits into
masterfrom
docs/acid
Open

docs: Replace atomic mutations with ACID integrity concept#4070
ntucker wants to merge 6 commits into
masterfrom
docs/acid

Conversation

@ntucker

@ntucker ntucker commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Replace the Atomic Mutations concept page with an ACID page covering atomicity, consistency, isolation, and durability for async frontend data
  • Add interactive playgrounds for update/create/delete, rollback, identity, collections, query, validation, transports, fetch-order, snapshots, and REST durability
  • Redirect /docs/concepts/atomic-mutations to /docs/concepts/acid and update GOALS, Entity, mutations, and homepage demo links

Test plan

  • Visit /docs/concepts/acid and confirm playgrounds render and run
  • Confirm /docs/concepts/atomic-mutations redirects to the new page
  • Check the Concepts sidebar shows ACID
  • Follow the homepage demo “atomically and immediately” link to the ACID page

Made with Cursor

Explain atomicity, consistency, isolation, and durability for async
frontend data, with interactive demos and a redirect from the old page.

Co-authored-by: Cursor <cursoragent@cursor.com>
@changeset-bot

changeset-bot Bot commented Aug 12, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 85455d5

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@vercel

vercel Bot commented Aug 12, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
docs-site Ready Ready Preview Aug 13, 2026 4:24pm

Request Review

@github-actions

Copy link
Copy Markdown
Contributor

Size Change: 0 B

Total Size: 81 kB

ℹ️ View Unchanged
Filename Size
examples/test-bundlesize/dist/App.js 1.46 kB
examples/test-bundlesize/dist/polyfill.js 307 B
examples/test-bundlesize/dist/rdcClient.js 10.9 kB
examples/test-bundlesize/dist/rdcEndpoint.js 8.07 kB
examples/test-bundlesize/dist/react.js 59.6 kB
examples/test-bundlesize/dist/webpack-runtime.js 784 B

compressed-size-action

@codecov

codecov Bot commented Aug 12, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.84%. Comparing base (ef4653f) to head (85455d5).

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #4070   +/-   ##
=======================================
  Coverage   97.84%   97.84%           
=======================================
  Files         156      156           
  Lines        3057     3057           
  Branches      612      612           
=======================================
  Hits         2991     2991           
  Misses         18       18           
  Partials       48       48           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Comment thread docs/core/shared/_acidValidate.mdx
Reuse the existing optimistic-transform demo and list interceptor instead of copying them, and point durability at the managers persist example.

Co-authored-by: Cursor <cursoragent@cursor.com>
Avoid dual @types/react mismatch between Docusaurus SVG modules and React.ComponentProps<'svg'>.

Co-authored-by: Cursor <cursoragent@cursor.com>
Replace duplicate todo lists with list+detail issues and a bundled trade/account mutation so each guarantee shows up in a recognizable product UI.

Co-authored-by: Cursor <cursoragent@cursor.com>
Comment thread docs/core/shared/_acidCreate.mdx Outdated
Comment thread docs/core/shared/_acidDelete.mdx
The working case looks uneventful unless tearing is visible beside it.

Co-authored-by: Cursor <cursoragent@cursor.com>

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 7ab1e09. Configure here.

}
>
<ArticleBody id={id} />
</AsyncBoundary>

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Rejection UI uses loading fallback

Medium Severity

AsyncBoundary's fallback only covers Suspense, not failed validation. Invalid articles throw into the default error UI, so Rejected — not committed and Still in store never appear on a real rejection, and the loading state is labeled as a rejection instead.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 7ab1e09. Configure here.

</AcidPane>
<AcidPane title="Typical independent caches">
<RawArticlePage id={id} />
</AcidPane>

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Raw article pane suspends entire demo

Medium Severity

RawArticlePage calls useSuspense with no local AsyncBoundary. Switching payloads suspends the whole playground, so the navigator and Data Client pane unmount into the preview loader instead of updating side by side.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 7ab1e09. Configure here.

Hazard stripes and raw buttons made tearing look like a wireframe; a
quiet left-rule, chip, and toolbar make the contrast readable.

Co-authored-by: Cursor <cursoragent@cursor.com>
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