Long-lived cursor subscriptions hold a reference to a row whose underlying value can change between the selection time and the next fetch — typically when a second user edits the record concurrently. The platform's TABLE cursor had a per-row checksum to detect this and refuse to bind a stale row ; this release extends the same guarantee to the two remaining cursor types — VTABLE (view-table) and REPORT — so the read path is uniformly safe across the platform.
- Per-row CRC computed at selection. The cursor stores a checksum of the row's content at the time it was selected. On every subsequent fetch the row is re-read and the checksum re-validated.
- HTTP 409 Conflict on drift. When the checksum no longer matches, the request fails with HTTP 409 and a machine-readable error envelope identifying the row and the field set ; the client refreshes rather than silently re-binding the wrong record.
- Sub-cursor coverage. Form sub-cursors that hang off the parent cursor inherit the same integrity gate, so editing a child row whose parent has drifted fails fast.
The change is invisible to application code — the platform handles the validation, the client UI handles the 409 with a refresh — and it forecloses an entire class of data-corruption bug that surfaces only under concurrent load.