Quiz policy ยท Published 23 September 2026
Practice Mode versus Exam Mode
The question card stays familiar. Policy changes what the learner may see and do, and the server remains authoritative for formal assessment.
Practice Mode: learn while attempting
Practice is designed for formative learning. It can show whether an answer is correct immediately, reveal explanations when permitted, allow flexible Previous and Next navigation, provide flags and option elimination, and support review of weak questions. A timer can still be used, but it is not required.
Exam Mode: protect the assessment
Exam Mode hides answers while the attempt is active, controls when results and explanations appear, and can apply a server-timed deadline or duration. Previous navigation, review and tools can be enabled or restricted. Attempt limits are checked by the Worker, and a terminal submission is immutable unless an authorized reset is performed.
Custom: explicit settings
Custom is useful when neither preset fits. It can express immediate feedback, answer and explanation visibility, question and option shuffle, previous navigation, review before submit, timer, result release, attempt count, retry behavior and copy-protection preference.
What never changes in a formal assignment
- The assignment API decides whether the student is authorized and eligible.
- The server chooses the canonical question and version identity.
- Hidden answer keys are not sent to the browser before release.
- Answers are persisted to the server and scoring is server-authoritative.
- Refresh resumes an in-progress attempt instead of creating another one.
- Cross-user access and changes to terminal attempts are denied.
How to choose
Use Practice when the learner should receive feedback during the process. Use Exam when the attempt is meant to measure performance under controlled conditions. Use Custom only when you can explain why the changed setting supports the learning or assessment goal.
Context determines policy. It does not require another question renderer.
Preview the complete flow before sharing.