Assessment and Transfer
Closed-book reasoning
- Explain assignment versus comparison and print versus return, with examples.
- Trace a loop over
[12, 8, 12]and explain empty input. - Explain the difference between a missing history file and malformed JSON.
- Explain why
[true]is valid JSON but invalid tracker history. - Explain why an all-green supplied checker does not prove the program meets every requirement.
Independent transfer
From a blank file, implement a reading-page tracker. Accept comma-separated whole pages in 1..500, retain duplicate sessions, and reject missing fields. Return count, total, longest and the number of sessions meeting a positive target inclusively. Persist and reload a history; preserve it on invalid input. Write tests for empty input, both boundaries, duplicates, equality with the target and corrupt history.
Use ordinary documentation during implementation, but no reference solution or generated implementation. Record assistance. Then explain one function and repair one deliberately introduced defect without notes. The transfer changes the summary contract, so renaming the original file is insufficient.
Submission
Provide code, tests, CLI evidence, the debugging note, answers and actual hours spent. Use the rubric. Also complete the design and diagnosis clinic. Schedule both delayed checks using the pilot record; their 2–3 hours are additional to the initial 38–57-hour estimate.