Repository navigation
Add a guide for converting questions from the legacy grader - #38
Merged
Merged
Conversation
Also document leading and trailing code, query_setup and the limits on setup code in the quick start, and fix the module-level timeout example, which used a variable the plugin doesn't read. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Draft
1 task done
…verting Co-Authored-By: Claude Opus 5.5 <[email protected]>
…sion-specific quick_start.md now starts with a first question, local testing and where code belongs, then the API reference. It fixes the list of default builtins and the examples that relied on bare asserts. converting.md links to it instead of repeating general guidance, rewrites the square example to avoid setup code, and calls out the restricted builtins. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Move the plot docs from #32, #42 and #43 into the restructured quick_start.md, and update the conversion guide now that plot questions can be converted with assert_plot_equal and feedback.add_image. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
eliotwrobson
marked this pull request as ready for review
November 12, 2026 21:49
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Splits the docs into two guides:
quick_start.mdis for writing a question for the first time, and documents the full API. It starts with a complete example question, how to test it locally and where each kind of code belongs. After that come the reference sections: writing tests, checking answers without giving them away, giving values to student code, everyConfigObjectsetting, notebooks and workspaces.converting.mdis new and covers only converting a question from the legacy grader. It's meant to be handed to someone else's AI agent as a link. It covers when not to convert, how each legacy file and API maps to the new grader, moving code out ofleading_code.py,trailing_code.pyandsetup_code.py, converting plot questions withassert_plot_equalandfeedback.add_image, behavior differences, and how to test a conversion.It also fixes things that were wrong in
quick_start.md:initialization_timeout. The plugin doesn't read that variable.assert, which shows students the expected value.Testing
I ran the example question and the converted
squarequestion in the grader image with thedocker runrecipe from the guides. I also ran the local pytest layout, and checked the guides' claims about setup code,names_for_user, scoring, timeouts and trailing code.The plot sections from #32, #42 and #43 were merged in from
mainand moved into the new structure.🤖 Generated with Claude Code