canvas-ics33listed
Install: claude install-skill X-isdoingreat/canvas-pilot
# canvas-ics33
Produce and verify one code-assignment artifact in any language. Treat the
Canvas assignment summary as a routing hint; the real specification controls
the work.
## Runtime contract
Require an approved current plan item, its assignment snapshot, `run_dir`, and
the exact work directory returned by:
```python
from src.course_artifacts import ensure_stable_work_dir
work = ensure_stable_work_dir(run_dir, course_id, assignment_id)
```
The directory name must be
`course-<course_id>__assignment-<assignment_id>`. Never use a course or
assignment name as filesystem identity. Keep all assignment writes below it:
```text
spec.md
spec-sources/
references/
repo/
draft/
REQUIREMENTS.md
constraints.md
research_findings.md
verification.log
audit/round-<n>.json
stages/
result.json
```
This skill handles code, code-adjacent short PDFs, and required development
history. Route essays, reading annotations, zyBook problem sets, and quizzes to
their dedicated skills. Use `skipped` only for an intrinsically manual task
such as an in-person defense, identity check, or proctored environment.
## Resolve the private course design
Read `_private/canvas-ics33-app.md` before fetching or generating anything.
The file may contain several courses and assignment kinds:
1. Select the exact `## Course <course_id>` block. Never inherit a similarly
named course or another course's defaults.
2. Within that block, accept either a `### <kind>` or `#### <kind>` heading.
Match its `namin