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 approved SimDeck improvements.

Source of truth

SimDeck release notes

Approved release notes are published here. Draft entries are labeled and are not live releases.

Version 0.67

September 2, 2026

Consumed classroom notices do not return later

A teacher notice that has been consumed no longer reappears when David leaves the page and later returns through classroom navigation.

Why it matters

  • - Prevents an old Undo confirmation from appearing beside a newer live classroom state.
  • - Keeps the message visible and accessible on the exact view created by the action.
  • - Consumes it on refresh or navigation without losing the selected class or filters.

Verification

  • - Authenticated smoke coverage leaves a cleaned live notice, visits Activity, returns with browser Back, and confirms the old message stays consumed.
  • - The same flow reloads Activity and returns through in-app navigation without resurrecting the message.
  • - The existing Refresh now and following browser-reload checks remain in the same end-to-end flow.
  • - Full unit, typecheck, lint, build, exact PR-head CI, production deployment, and isolated teacher retest remain required before acceptance.

Source: Linear PI-239

  • Adds a unique action receipt to each teacher result so an old browser-restored success URL cannot claim that a completed action just happened again.
  • Rejects receipt-less legacy success URLs while keeping current error recovery compatible.
  • Preserves the framework's history state when cleaning the address so hidden navigation links cannot carry the old notice forward.
  • Gives each rendered route message a unique browser-history receipt instead of reusing a deterministic component identifier.
  • Consumes that receipt before link, page, back, or forward navigation so stale server-component snapshots cannot revive it.
  • Keeps locally generated demo feedback independent from one-time URL feedback.

Version 0.66

September 2, 2026

One-time classroom notices stay one-time during live refresh

Teacher success and error messages now remain readable for the current view, then disappear on the next manual, automatic, or browser refresh.

Why it matters

  • - Keeps a completed Undo confirmation visible long enough for David to read it.
  • - Prevents an old success message from returning after live classroom data refreshes.
  • - Preserves the selected class, filters, and other URL context while consuming only the one-time message.

Verification

  • - Authenticated smoke coverage opens a live classroom notice, confirms it remains visible after URL cleanup, and consumes it through Refresh now.
  • - A following browser reload proves the consumed notice does not return.
  • - Full unit, typecheck, lint, build, exact PR-head CI, production deployment, and isolated teacher retest remain required before acceptance.

Source: Linear PI-239

  • Synchronizes the cleaned address with Next's internal canonical URL instead of reusing stale router history state.
  • Applies to the shared teacher notice used across Classes, Students, Activity, and live classroom pages.
  • Keeps the existing accessible status and alert announcement behavior.

Version 0.65

September 2, 2026

Clear recovery when a teacher opens a private student link

A signed-in teacher who opens a student's private inventory now stays in teacher mode and sees a direct explanation instead of landing silently on Classes.

Why it matters

  • - Confirms that the teacher session is still active and that student inventories are private.
  • - Returns the teacher to the class library, where they can open the appropriate class and manage its students and cards.
  • - Keeps private student data hidden without presenting an unrelated student login form.

Verification

  • - Authentication-boundary coverage asserts the exact teacher-mode recovery route and message.
  • - Full unit, typecheck, lint, build, exact PR-head CI, production deployment, and isolated teacher retest remain required before acceptance.

Source: Linear PI-239

  • Routes cross-role inventory access directly to Classes with an accessible error message.
  • Avoids the intermediate class-less dashboard redirect that previously discarded the explanation.
  • Preserves the existing teacher session and authorization boundary.

Version 0.64

September 2, 2026

A private password must differ from the temporary password

A newly provisioned or teacher-reset student cannot satisfy the required password-change step by entering the same temporary password again.

Why it matters

  • - Keeps the first-login safety promise accurate: students must choose a different private password before cards open.
  • - Shows a clear correction message without changing the password or clearing the required-change gate.
  • - Applies the same protection to voluntary student password changes.

Verification

  • - Focused server-action tests prove reused passwords never reach Appwrite and never clear the required-change marker.
  • - Rendered form coverage verifies the guidance is visible.
  • - Full unit, typecheck, lint, build, exact PR-head CI, exact production deployment, and isolated student retest remain required before acceptance.

Source: Linear PI-239

  • Rejects a new password that is identical to the current password before calling the authentication provider.
  • Keeps the server-owned required-change marker intact on rejection.
  • Explains beside the form that the new password must differ from the current one.
Newer releases

Page 4 of 19

Older releases

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

PrivacyTermsSupportHelpWhat's new