Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Instructors and TAs need a way to test an assignment before releasing it to students

Open
#363 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Quiet
Tech stack
python
Domain
backend

Research direction

Start by reading code_editor.py's run_code and _verify_student, then compare submission.py's upload_submission behavior. Decide how staff testing should work for upload-only assignments, and inspect reviewGrades and manageSubmissions for roster handling. Done means staff can test before release without test data appearing as student submissions or affecting grades and counts.

Written by the indexing model from the issue text.

Description

Currently, both the code editor (run_code/submit_code in code_editor.py) and file-upload submission (upload_submission in submission.py) block non-student callers — _verify_student has no staff bypass, and upload_submission has an explicit comment: "Instructors/TAs should not upload submissions on behalf of students." There's no way for staff to verify an assignment's autograder works before publishing it to students.

run_code is already ephemeral (no Submission row is written — "Run code without creating a submission" per its own docstring), which makes it the natural place to allow staff through for code-editor assignments. Two things stand in the way even there:

  1. _verify_student in code_editor.py has no staff bypass.
  2. run_code explicitly rejects unpublished assignments (if not assignment.published: raise BadRequestError(...)) — but testing before publishing is the entire point of this request, so that gate needs a staff exception too.

Upload-only assignments (enable_code_editor=False) have no ephemeral equivalent — upload_submission always persists a Submission row, and there's currently no flag on Submission to distinguish a staff test run from a real one. Supporting staff testing there means either adding a Submission flag (schema migration) or a separate non-persisted "dry run" execution path, and either way, reviewGrades/manageSubmissions' rosters and any grade-count/dashboard logic would need to exclude staff test data — which they don't do today for any role (see the linked roster-filtering issue).

Reported by Cecilia (yczhangcc) during review of PR #355.

Dominant language
Python
Stars
13
Forks
0
Avg merge
2h 4m
Merged PRs (30d)
1

Getting set up

  • Ships a Dockerfile or Docker Compose file
  • No pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from kiat/codeAssist

All issues in kiat/codeAssist

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.