csot/contest

Contest

week-02 · tasks & rules

Open any row for the full spec, examples, and what the grader checks.

Program content. Weekly guides, fork setup, and mini-project briefs live in the csot-devops repo on GitHub. Fork it once at the start of the program and pull new weeks from upstream each Monday.

All tasks

Containerize, debug, and rescue real Docker stacks. Task specs show symptoms only — no spoilers.

Setup, scoring, and per-task commands live on the Instructions page (not duplicated here).

Open any row in the All tasks table below for the full spec, grader rubric, and How to evaluate block.

Code of honour

Solve them yourself. Docs, blog posts, and AI assistance are fine. Copy-pasting another student's files is not.

Scoring & penalties

Standing score

Your leaderboard score is the sum of your best mark on each task across all graded submissions — not your best single upload:

score = Σ (best points on task T)

Example: best on task 07 = 9 and best on task 02 = 7 gives a score of 16, even if you submitted many times. Week 2 totals 200 points across 12 tasks.

Partial marks

Many tasks award credit in chunks (CLI shows PART with got/max). Your standing uses the best partial or full score per task. Task 12 (capstone) is worth 33 points with multiple graded checks.

Penalties (tie-break only)

Penalties never subtract points. They break ties when two players have the same score. For each task T, penalty on T = max(0, penalty_runs_on_T − 1):

Penalty runs on TPenalty
1st0
2nd1
3rd2
runs − 1

What counts as a penalty run:

  • csot submit ./solutions -t 07 — every graded run on task 07 counts.
  • Full-folder submit — counts only when the task file was present and you had not already reached full marks on that task before this submission. Missing files and already-perfect tasks are ignored.
  • Skipped tasks (partial submit filter) and identical re-uploads (deduped) never count.

Live-sandbox time penalty (Week 2)

Week 2's live incidents (tasks 03, 04, 05, 07, 08, 09, 11, 12) behave like a real on-call page: the longer your sandbox container stays running before you fix it, the more points that task loses. Unlike the tie-break penalty above, this does reduce your score — but never below 80% of the task.

  • The clock counts container uptime only. Run csot challenge stop when you step away and the clock pauses — idle time is free.
  • Only one sandbox runs at a time: starting/switching to another task auto-stops the previous one and pauses its clock.
  • Submit-only tasks (01, 02, 06, 10) have no live sandbox and are never time-penalised.
Container uptime on TPoints lost
under 30 min0%
30 min2.5%
+ every extra 20 min+2.5%
170 min and beyond20% (capped)

Check your per-task VM time and current penalty any time with:
csot challenge list -w week-02 (shows a VM time and Time pen. column per task, plus your total uptime for the week).

Tie-break order

Higher score (after time and AI penalties) → fewer total attempt-penalties → earlier last graded submission.

AI usage policy

Using AI tools (ChatGPT, Copilot, Claude, etc.) to help you understand the problem or to write your own fix is perfectly fine — that is how you learn.

Giving an AI agent direct SSH access to your sandbox is penalised. AI agent access is detected automatically. Each detected session costs 2% of that task's points (no floor — repeated abuse compounds).

Allowed ✓Penalised ✗
Asking AI to explain a concept or error message Running ssh user@host "command" via an AI agent script
Generating a fix yourself and applying it over SSH Piping SSH stdin/stdout into an LLM automation loop
Any interactive, human-driven terminal session Automated shell sessions

AI agent access is detected automatically. Check your AI flag count with csot challenge list -w week-02.