Version 0.51
July 16, 2026
Pending sends reserve the card before they queue
Approval-required student sends now reserve the exact card version and create the pending request together, so stale or simultaneous submissions cannot leave an invalid or duplicate decision for David.
Why it matters
- - Two nearly simultaneous send submissions for the same card cannot both become pending decisions.
- - A card change that wins the race leaves no stale approval request behind.
- - A failed reservation, duplicate recheck, Activity write, or transaction commit leaves no partial classroom state.
Verification
- - All 459 unit tests pass across 46 files, including exact reservation filters, reserved-version metadata, losing-reservation no-write behavior, an in-transaction duplicate race, and commit-conflict rollback.
- - Critical-source coverage passes at 85.56% statements, 72.50% branches, 96.15% functions, and 94.52% lines; actions reach 95.17% line coverage.
- - All 465 public smoke and accessibility cases pass across Chromium, Firefox, WebKit, Mobile Chrome, and Mobile Safari; the five credential-gated teacher cases skip as designed.
- - The production complete transfer-request and card reads confirm every unresolved request is unique, versioned, and tied to its current live active student-owned card snapshot without classroom or Auth writes.
- - Typecheck, full lint, zero-warning static security lint, production build, backendless demo, 10 skeleton states, theme contrast, npm audit with zero vulnerabilities, and git diff validation pass.
- - The Version 0.51 draft was recorded on PI-213 before this public page entry; the canonical ledger follows exact staging proof.
Source: Linear release ledger document, PI-213
- Conditionally updates only the exact active student-owned card version, preserving its owner and status while making the card the Appwrite transaction conflict key.
- Snapshots the reserved card version in the request and stages that request inside the same transaction.
- Repeats the complete indexed pending-request scan inside the transaction while retaining the fast precheck and its existing student-facing duplicate guidance.
- Scopes both the initial card read and reservation by card, game, current student, student ownership, active status, and rendered version.