Sheetwrite

CAPABILITY / DATABASE & DOCUMENT LIFECYCLE

Edit once. Reload the same durable document.

Edit a live ledger, watch its pending write land in IndexedDB, then reopen the same durable document. The journal shows each acknowledgement as it happens.

Storage
Browser IndexedDB
Commits
Append-only DocumentOp[]
Versioning
Atomic base-version compare
Durability
Pending queue survives reload
Durable workbook

Expedition ledger

LoadingOpening IndexedDB…

Live total

Revision
0
Pending writes
0
Reload state
Opening IndexedDB…
Allocated
0 B

Edit an amount. Watch it become durable.Pause autosave to hold a pending write, save it, then reopen the same document from IndexedDB.

Failure lab & storage diagnostics
Lost acknowledgement
Conflict & reset

Storage internals

Snapshot revision
0
Tail records
0
IDB reads
0
IDB writes
0

Compaction folds the operation tail into snapshot revision after 8 tail records or 64.0 KiB.

Architecture boundary

The Grid feeds a durable pending queue. The demo adapter sequences commits into IndexedDB; your product supplies the same PersistenceAdapter contract over its own database and transport.

Try itEdit an amount, pause autosave to inspect the durable pending write, save it, then reopen the session.

VERIFIED IN THIS SCENARIO

Every behavior above is the public contract.

  1. Atomic sequencing

    Each commit compares its base version against the stored head inside one serialized adapter queue — stale writers get a recoverable conflict, never a lost update.

  2. Idempotent retries

    Lose an acknowledgement and retry with the same mutation id: the server answers duplicate with the original version and applies nothing twice.

  3. Bounded storage

    The operation tail is capped by record count and bytes; crossing either bound folds the tail into one compacted snapshot record — watch the gauges.

  4. Reload recovery

    Close and reopen the session (or reload this page): committed state and the durable pending queue come back from IndexedDB exactly once.

OWNERSHIP BOUNDARY

What Sheetwrite provides — and what your host owns.

This showcase runs the full save-and-reload flow against a real browser database so you can inspect it. The pieces a product must own stay explicitly yours.

Sheetwriteships in the library
  • Persistence contract

    PersistenceAdapter: snapshot load plus append-only DocumentOp[] commits with applied / duplicate / conflict acknowledgements.

  • Durable offline queue

    IndexedDbPendingCommitStorage keeps unacknowledged local commits durable across reloads, with bounded restore.

PersistenceAdapter

Your hostyou implement and deploy
  • Server database

    The IndexedDB adapter on this page is demo-only. Production documents live in your database behind your own PersistenceAdapter.

  • Authentication & authorization

    Sheetwrite never sees credentials. Identity, session, and per-document permissions are enforced by your backend before a commit is sequenced.

  • Transport & deployment

    HTTP, WebSocket, queues, regions, backups: the adapter interface is transport-neutral by design and ships no network code.