docs: make getting started a real grading workflow#275
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR updates the documentation “Getting Started” flow to walk users through a real end-to-end grading run (API start → config creation → submission → result retrieval), while moving MkDocs authoring instructions into a dedicated contributor guide.
Changes:
- Replaced the previous “Local Docs Development” getting-started page with a first grading workflow quickstart.
- Added a new “Docs Site Development (MkDocs)” guide for documentation contributors.
- Updated MkDocs navigation labels/entries to reflect the new doc structure.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| mkdocs.yml | Updates the MkDocs nav to surface the new getting-started workflow and adds the docs contributor guide to Guides. |
| docs/guides/docs-site-development.md | New contributor-focused guide for running/building the docs site locally. |
| docs/getting-started/mkdocs-local-development.md | Rewritten into a full first grading workflow quickstart (API/config/submission/results). |
| When ready, the API is available at `http://localhost:8080`. | ||
|
|
||
| You can check health: | ||
|
|
||
| ## Build locally | ||
| ```bash | ||
| curl http://localhost:8080/api/v1/health | ||
| ``` |
There was a problem hiding this comment.
The guide points to the API running on http://localhost:8080, but the Docker Compose service exposes port 8000 (docker-compose.yml maps 8000:8000 and healthcheck hits localhost:8000). This will cause the example curl commands to fail unless the user manually remaps ports. Please update the URLs/port throughout this page (or explicitly document how to configure the port).
| "required_files": ["main.py"], | ||
| "setup_commands": [] |
There was a problem hiding this comment.
setup_config is shown as a flat object with required_files/setup_commands, but the runtime pre-flight code expects setup_config to be keyed by language (e.g., { "python": { "required_files": [...], "setup_commands": [...] } }). With the current example shape, the pre-flight step will not enforce main.py or run setup commands because it won’t find the language key.
| "required_files": ["main.py"], | |
| "setup_commands": [] | |
| "python": { | |
| "required_files": ["main.py"], | |
| "setup_commands": [] | |
| } |
| ## 4) Poll for the result | ||
|
|
||
| ```bash | ||
| curl http://localhost:8080/api/v1/submissions/<submission_id> |
There was a problem hiding this comment.
In Markdown, the <submission_id> placeholder in the URL will be treated as an HTML tag and may not render as visible text. Use a non-angle-bracket placeholder (e.g., {submission_id} / SUBMISSION_ID) or escape the angle brackets so users can copy/paste the command correctly.
| curl http://localhost:8080/api/v1/submissions/<submission_id> | |
| curl http://localhost:8080/api/v1/submissions/{submission_id} |
| - Getting Started: | ||
| - Local Docs Development: getting-started/mkdocs-local-development.md | ||
| - Run Your First Grading Workflow: getting-started/mkdocs-local-development.md | ||
| - Development Guide: guides/development.md |
There was a problem hiding this comment.
This page is now a grading-workflow quickstart, but the underlying filename/path is still getting-started/mkdocs-local-development.md, which is misleading for future maintenance and linkability. Consider renaming the markdown file/path to match the new topic (and update the nav entry accordingly).
Summary
Validation