Repository navigation
Add a guide for converting questions from the legacy grader - #38
Draft
eliotwrobson wants to merge 5 commits into
Draft
eliotwrobson wants to merge 5 commits into
eliotwrobson wants to merge 5 commits into
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 <noreply@anthropic.com>
Draft
1 task done
…verting Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…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 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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, 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 guides describe behavior from #39 (
import_blacklistfor functions) and #40 (more default builtins). Merge those first.🤖 Generated with Claude Code