WUT_Computer_Science/gates/runnability-local.tsv
Krzysztof kuhy Rudnicki bd24dd57ea Hold the coursework to the same lint bar as the tooling
kuhy overruled the "do not fix coursework to be better than it was submitted"
rule: git history is the archive, so the working tree can be clean. This lands
the config and the mechanical half of the cleanup -- 9,281 ruff findings under
the fleet config down to 3,686, with no per-file-ignores anywhere.

What is in here:

- pyproject.toml, the first one in this repo. select = ["ALL"], mypy strict,
  and the vendored list mirrored into ruff exclude and coverage omit. Five
  rules are off and each says why; CPY001 is the only judgement call, because
  stamping a copyright header onto 137 university assignments would assert a
  licence that was never claimed. No hook is wired up yet -- a gate lands only
  once its subject is clean.

- ruff format + the safe fixes, then a second pass over the docstring rules
  ruff marks unsafe (they only edit docstring text). 108 files.

- TRAK/sightpy is vendored, not coursework: it is rafael-fuente/Python-Raytracer
  (BSD 3-Clause). Verified against a fresh upstream clone with line endings
  normalised -- 30 of 32 files byte-identical, ray.py and scene.py carrying a
  12- and 13-line local patch that counts rays for the report. 35 files that
  should never have been linted, now excluded and restored.

- WDWR, SPD, MOM and ECRYPT are fully clean, by hand and verified by running
  them: WDWR's three plot scripts print the same statistics as before, MOM's
  PuLP model solves to the same cost. WDWR's graph.py had a 342-character CSV
  header embedded as a string literal, which cannot be wrapped -- the data
  moved to data/pareto_front.csv. Two 0-byte .py stubs are deleted; an empty
  file is not a deliverable and git still has it.

Three harness bugs found by actually running things:

- `run` now forces MPLBACKEND=Agg. TRAK finished its ray trace in 37 seconds
  and then sat for 45 minutes: plt.show() had opened an image viewer and was
  waiting for someone to close the window.
- TRAK's main.py only pops that viewer with --show now, and its runner writes
  to a gitignored build/ via the new --entry-args. The default output path is
  outputs/output.png, which is TRACKED -- a plain run overwrote a submitted
  deliverable.
- course_lib.sh was 357 lines, over this repo's own cap. Split into
  course_probe.sh and course_run.sh.

Verified: ECOTE 26 tests pass, ECRYPT_PROJECT 99 pass, TRAK renders
cornell_box in 37s and exits 0, every module compiles, and every import ruff
removed was checked to be genuinely unused.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0172dj34FDpao6wsix8ZuCzE
2026-08-28 19:53:04 +02:00

2.7 KiB

1NotProgramming/DPZrunnablebuilds the report with latexmk
2NotProgramming/ECOGRrunnablebuilds the report with latexmk
3NotProgramming/EDABArunnablebuilds the report with latexmk
4NotProgramming/EDABA-LABrunnablebuilds the report with latexmk
5NotProgramming/EDISErunnablebuilds the report with latexmk
6NotProgramming/EDISPno-codesubmitted lab reports as PDFs only; no source was produced
7NotProgramming/ELACrunnablebuilds the report with latexmk
8NotProgramming/EMISYrunnablebuilds the report with latexmk
9NotProgramming/ENUMEblockedneeds MATLAB or Octave (none of: matlab octave)
10NotProgramming/EPHY2no-codesubmitted lab reports as PDFs only; no source was produced
11NotProgramming/EPOGAIno-codea presentation only; no source was produced
12NotProgramming/ERPMrunnablebuilds the report with latexmk
13NotProgramming/ESDP1runnablebuilds the report with latexmk
14NotProgramming/ESOENrunnablebuilds the report with latexmk
15NotProgramming/MOMrunnablebuilds the report with latexmk
16NotProgramming/SDMrunnablebuilds the report with latexmk
17NotProgramming/SDM2runnablebuilds the report with latexmk
18NotProgramming/SPDrunnablebuilds the report with latexmk
19NotProgramming/STUPrunnablenpm install && npm start
20Programming/AISrunnablebuilds the report with latexmk
21Programming/BD2runnablenpm install && npm start
22Programming/BSSrunnablebuilds the report with latexmk
23Programming/EADSrunnablecompiles each standalone .cpp
24Programming/EARINrunnablepython3 the entry script
25Programming/ECOARrunnablemake
26Programming/ECOTErunnablepython3 /home/kuhy/WUT_Computer_Science/Programming/ECOTE/program/translator/main.py
27Programming/ECRYPTno-codetest1.py is a 0-byte stub; this course produced no submitted code
28Programming/ECRYPT_PROJECTrunnablepython3 the entry script
29Programming/EGUIrunnabledotnet build
30Programming/EOOPrunnablecompiles each standalone .cpp
31Programming/EOPSYrunnablemake
32Programming/EPFUrunnablemake
33Programming/E-PSYOPSrunnableopens in the Unity editor
34Programming/ERSMS-projectrunnabledocker compose up
35Programming/NLPrunnablepython3 the entry script
36Programming/PBADblockedjupyter is on PATH but broken (bad interpreter)
37Programming/PORRrunnablepython3 /home/kuhy/WUT_Computer_Science/Programming/PORR/code/main.py
38Programming/PSDrunnablestarts the Kafka/Flink stack (installs packages with sudo)
39Programming/psd_projectrunnablemvn package
40Programming/TRAKrunnablepython3 /home/kuhy/WUT_Computer_Science/Programming/TRAK/main.py
41Programming/twm_4blockedjupyter is on PATH but broken (bad interpreter)
42Programming/USDno-codeREADME describes a MetaDrive RL assignment; no implementation was submitted
43Programming/WDWRrunnablepython3 the entry script
44Programming/ZPOBrunnablebuilds the report with latexmk