Skip to main content
SimDeck
AboutWhat's newHelpDemoSupportStudent login
AboutWhat's newHelpDemoSupportStudent login
View demo
ChinaEgyptClassroom

Release ledger

What's new in SimDeck

A version-by-version record of the improvements, mirrored from the SimDeck release ledger in Linear.

Source of truth

Linear release ledger

Public notes summarize the canonical Linear source in teacher-facing language. The first entry below is the latest verified SimDeck delivery.

Open Linear source

Version 0.34

July 16, 2026

One student account across classes

Students can now use one verified SimDeck email and password in multiple classes and restored game copies while each class keeps its own approval, access, and cards.

Why it matters

  • - A student joining another or restored class enters the real password for their existing SimDeck account instead of being blocked by a duplicate email.
  • - Students with several memberships get a signed-in class chooser, while class codes and direct inventory links still open the intended class.
  • - Deleting one student row or class keeps the shared sign-in active for other linked classes and restored rosters waiting to be reclaimed.

Verification

  • - All 465 public smoke and accessibility cases pass across Chromium, Firefox, WebKit, Mobile Chrome, and Mobile Safari.
  • - All 120 accessibility cases are green; all 22 public DOM states per browser remain clear of serious and critical axe findings.
  • - All 75 exact feedback-role cases, 90 field-feedback cases, 25 crafted-feedback trust cases, 25 input-purpose cases, 10 provider-limit cases, 10 password-guidance cases, and 5 class-code entry cases remain green.
  • - All 259 unit tests pass with 82.87% statement, 65.66% branch, 94.04% function, and 91.71% line coverage across 15 critical modules.
  • - Typecheck, lint, static security, production build, backendless demo, 10 skeleton states, theme contrast, npm audit with zero vulnerabilities, Appwrite schema, production health, integrity, and restore planning pass.
  • - The Linear release ledger was updated before this public page entry.

Source: Linear release ledger document, PI-213

  • Verified an existing account's password and exact identity before linking it to a target class, while preserving first-time account creation.
  • Kept approval, pending status, access codes, roles, cards, transfers, and activity isolated per class even when one Auth identity is shared.
  • Added concurrency-safe duplicate prevention, exact class selection, student-specific sign-out, fail-safe shared-account cleanup, and protection against one-class email edits desynchronizing a shared identity.

Version 0.33

July 16, 2026

Account fields that match their real limits

Class join and password reset now disclose and enforce Appwrite's account-name and new-password limits before a submission can fail at the provider.

Why it matters

  • - Students see the full supported password range—8 to 256 characters—before creating or resetting a credential.
  • - Class-join names stop at the supported 128-character account limit instead of accepting a value that cannot be saved.
  • - Oversized names, passwords, and confirmations identify only the field to fix while system and provider failures remain at the form level.

Verification

  • - All 70 focused provider-limit, oversized-feedback, field-association, and password-guidance cases pass across Chromium, Firefox, WebKit, Mobile Chrome, and Mobile Safari.
  • - All 445 public smoke and accessibility cases pass across the five required browser profiles.
  • - All 85 field-feedback cases, 65 exact feedback-role cases, 25 crafted-feedback trust cases, 25 input-purpose cases, 10 provider-limit cases, 10 password-guidance cases, and 5 class-code entry cases remain green.
  • - All 115 accessibility-specific cases remain green; all 21 public DOM states per browser remain clear of serious and critical axe findings.
  • - All 228 required unit tests pass with 81.79% statement, 64.02% branch, 92.02% function, and 91.30% line coverage across the critical-source set, including 100% coverage of the shared auth constraints.
  • - Typecheck, lint, static security, production build, backendless demo, 10 skeleton states, theme contrast, and npm audit with zero vulnerabilities pass.
  • - The Linear release ledger was updated before this public page entry.

Source: Linear release ledger document, PI-213

  • Added one shared source for the account-name and new-password boundaries used by both public forms and server actions.
  • Stopped crafted oversized submissions before Appwrite lookup, account creation, sign-in, or password recovery calls.
  • Kept password guidance attached to both password fields while adding exact upper-bound feedback to the affected control.

Version 0.32

July 16, 2026

Field-specific sign-in and recovery errors

Trusted sign-in, class-code, and password-recovery errors now identify the exact field that needs attention while system-wide failures stay at the form level.

Why it matters

  • - Screen readers can identify the email, password, confirmation, or class-code field that needs correction instead of hearing only a detached page alert.
  • - Incorrect credentials identify the pair without revealing which value failed, while class-code and password-recovery errors identify only the correctable field.
  • - Rate limits, backend outages, account-loading failures, and reset-provider failures remain form-wide because no single input caused them.

Verification

  • - All 60 focused field-feedback cases pass across Chromium, Firefox, WebKit, Mobile Chrome, and Mobile Safari.
  • - All 385 public smoke and accessibility cases pass across the five required browser profiles.
  • - All 21 public DOM states per browser remain clear of serious and critical axe findings; all 115 accessibility-specific cases remain green.
  • - All 65 prior feedback trust and role cases, 25 input-purpose cases, 10 password-guidance cases, and 5 class-code entry cases remain green.
  • - All 219 required unit tests pass with 81.60% statement, 63.71% branch, 91.97% function, and 91.20% line coverage across the critical-source set.
  • - Typecheck, lint, static security, production build, backendless demo, 10 skeleton states, theme contrast, and npm audit with zero vulnerabilities pass.
  • - The Linear release ledger was updated before this public page entry.

Source: Linear release ledger document, PI-213

  • Connected trusted field errors to affected controls on teacher login, student login, class join, reset request, and password update.
  • Kept password requirements in each password field's description when adding a current error.
  • Added 12 separately reported route-state regressions per browser profile, covering eight field-specific and four form-level states.

Version 0.31

July 16, 2026

Smoother class-code entry on mobile

The class-join field now tells mobile keyboards to treat the teacher-provided class code as a character code instead of ordinary prose.

Why it matters

  • - Phones are asked to capitalize code characters instead of applying sentence-style capitalization.
  • - Autocorrect and spell checking are disabled so a classroom code is less likely to be replaced with a dictionary word.
  • - Browser autocomplete no longer treats the class code like a name, email, password, or one-time authentication credential.

Verification

  • - All 5 focused code-entry cases pass across Chromium, Firefox, WebKit, Mobile Chrome, and Mobile Safari.
  • - All 325 public smoke and accessibility cases pass across the five required browser profiles.
  • - All 21 public DOM states per browser remain clear of serious and critical axe findings.
  • - All 10 password-guidance cases, 65 feedback-boundary cases, and 25 input-purpose cases remain green.
  • - All 219 required unit tests pass with 81.60% statement, 63.71% branch, 91.97% function, and 91.20% line coverage across the critical-source set.
  • - Typecheck, lint, static security, production build, backendless demo, 10 skeleton states, theme contrast, and npm audit with zero vulnerabilities pass.
  • - The Linear release ledger was updated before this public page entry.

Source: Linear release ledger document, PI-213

  • Added character capitalization metadata to the visible class-code field on class join.
  • Disabled autocomplete, autocorrect, and spell checking for the code while keeping server normalization and required validation unchanged.
  • Added one separately reported browser regression per profile for all four exact code-entry attributes.
Newer releases

Page 10 of 16

Older releases

SimDeck is demo classroom software for role-based card inventories.

PrivacyTermsSupportHelpWhat's new