# Course progress and resume worksheet Fictional worked example plus a blank card. This resource defines expected answers; it is not a working course app or evidence that saving, access control, video completion or certification works. ## Worked course card - Course: C-PHOTO — Product photography basics. - Curriculum revision: 1; frozen for this exercise. - Access: granted to fictional learners A and B; all five lessons published. - Completion: an explicit learner action on an available lesson. - Required total: four lessons, L1–L4. Optional O is reported separately. - Resume order: first incomplete available required lesson in L1, L2, L3, L4. - Other available choices stay visible. All required complete means no required resume target. - Missing state is unknown. A known empty completion set means zero complete. | ID | Lesson | Required | Direct prerequisites | | --- | --- | --- | --- | | L1 | Prepare the scene | Yes | None | | L2 | Control the light | Yes | L1 | | L3 | Frame a product | Yes | L1 | | L4 | Make the final shot | Yes | L2, L3 | | O | Explore the glossary | No | L1 | Text map: L1 unlocks L2, L3 and O. L2 AND L3 unlock L4. O unlocks no other lesson. ## Filled checkpoint card “Available” below lists incomplete lessons that may be completed next. Completed lessons remain visible separately. | Case | Learner / input | Expected required result | Available incomplete | Required resume / reason | Actual app result | | --- | --- | --- | --- | --- | --- | | C1 | A: L1, L2, O complete | 2/4 = 50%; optional complete | L3 | L3; L4 still needs L3 | Not tested | | C2 | B: L1 complete | 1/4 = 25%; optional incomplete | L2, L3, O | L2 first in the declared order | Not tested | | C3 | A completes L3 after C1 | 3/4 = 75%; optional complete | L4 | L4; both direct prerequisites complete | Not tested | | C4 | A completes L4 after C3 | 4/4 = 100%; optional complete | None | No required lesson remains | Not tested | | C5 | Separate state: L1–L4 complete, O incomplete | 4/4 = 100%; optional incomplete | O | No required lesson remains; O is optional | Not tested | | C6 | Known empty completion set | 0/4 = 0%; optional incomplete | L1 | L1 | Not tested | | C7 | Completion state unavailable | Unknown; do not show 0% | Unknown | No trusted suggestion yet | Not tested | | C8 | Imported L2 without L1 | Reject inconsistent state | Not evaluated | L2 is missing L1; no trusted result | Not tested | ## Filled action checks Every rejection/no-op leaves the prior completion set unchanged. These are expected answers, not recorded app executions. | Action | Starting state | Expected disposition and resulting state | | --- | --- | --- | | Complete L4 | A at C1 | Reject: L3 missing. Remain L1, L2, O | | Complete L2 again | A at C1 | No-op. Remain L1, L2, O | | Undo L1 | A at C4 | Reject: completed L2, L3, L4 and O depend on L1. Keep all five complete | | Undo L4, then L2, then L3, then O, then L1 | A at C4 | Each step is permitted; final known empty set. This is an explicit sequence, never automatic erasure | | Reset A | A at C4, B at C2 | Explicit reset makes A empty. B stays L1 only | | Reopen O | A at C1 | Opening changes nothing; required resume stays L3 | | Import unknown or duplicate lesson IDs | Any trusted state | Reject input, retain trusted state; do not count duplicates or invent lessons | There are 32 possible Boolean sets over five lessons. Eleven are consistent with this graph; 21 are inconsistent. These numbers describe the example's possible states, not a learner population. ## Filled app handoff Audience: course learners and the creator. First useful journey: return to the next available required lesson with honest progress. Records and rules: courses, curriculum revisions, lessons, prerequisites, per-learner completion records and explicit correction history. Four required lessons; optional work has a separate total. Recompute the first available incomplete required lesson. Reject locked completion and inconsistent records; do not silently erase dependent work. Each learner accesses only their authorized course and own progress. Only authorized creators edit curriculum; enforce access on the server. The general Overskill brief builder's workspace preset is not sufficient for this mixed-role course. Use the course-specific brief on [the learner-path guide](/learn/design-course-progress-and-resume#brief-builder). Review these rules in the visible brief, the submitted prompt and Copy brief: - Authorized learners can read the published curriculum for their course, including lessons authored by the creator. - Each learner can read and change only their own progress, including explicit corrections and reset. Sharing a course does not share progress. - Only the course's authorized creator can edit its curriculum. Do not infer broader progress access from that role. - Server checks apply to direct reads, search, exports and mutations. Test A trying to read/find/export/change B's progress, a learner trying to edit curriculum, and an unauthorized learner trying to retrieve the course. Test that resetting A leaves B unchanged. Actual outcomes: Not tested. Review the generated brief and edit its input fields, then choose Start build; Copy brief is secondary. No course or worksheet is imported automatically. Account access/credits and later testing apply. ## Blank course and return card Course ID / name: ______ Curriculum revision: ______ Who is authorized / what content is published: ______ Completion evidence required: ______ Required lesson IDs and fixed denominator: ______ Optional lesson IDs and separate display: ______ Resume order or choice rule: ______ Unavailable-state behavior: ______ Correction / dependent-history policy: ______ Who may edit curriculum; who may edit progress: ______ | Lesson ID / title | Required or optional | Direct prerequisites | Evidence that counts as complete | | --- | --- | --- | --- | | ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ | | Test learner ID | Known completed IDs or explicitly Unknown | Expected required count | Expected available / missing reasons | Expected resume | Actual after leave/return | Result / date | | --- | --- | --- | --- | --- | --- | --- | | ______ | ______ | ______ | ______ | ______ | Not tested | ______ | | ______ | ______ | ______ | ______ | ______ | Not tested | ______ | Before sharing: inspect one incomplete, one complete, one optional-only difference, one inconsistent state and one refused correction. Run the return test with two authorized test learners. Keep missing results marked Not tested; don't turn this plan into a persistence, permission or certification claim.