mirror of
https://github.com/kuhyx/WUT_Computer_Science.git
synced 2026-11-10 19:47:32 +01:00
Two invariants had been established by hand and left ungated, which is the
"a remedy that only works if someone remembers" pattern:
- scripts/check_ignore_consistency.sh fails the commit if any TRACKED file
is also gitignored. .binary-allowlist used to *instruct* the reader to
re-run that check; now it is enforced. Verified both ways -- passes on the
tree, and fails when an ignored file is force-added.
DOCS-runnability.md now really has two columns. Each environment writes only
its own gates/runnability-<env>.tsv and the doc renders from both, so a CI run
cannot clobber the local results. The ci tsv is gitignored: committing a copy
generated here would label this machine's capabilities as the runner's.
Rendering it surfaced a classic bug -- awk's NR==FNR idiom silently swallows
the SECOND file when the first is empty, so the table came out with a header
and no rows. It compares FILENAME instead.
runnability.yml deliberately does NOT diff against a committed baseline. A
status is a property of the machine, so `runnable` locally and `blocked` on a
runner is correct rather than drift, and diffing would make the workflow red
by construction. It fails on `error` instead -- a runner that crashes or
reports an unknown kind.
Then five more courses were actually run, because EADS alone had produced four
real bugs and one sample proves nothing:
- ECOAR and EPFU build (nasm + 32-bit gcc, and gcc respectively).
- ECOTE's 17 test modules could not run AT ALL. Its package is named `code/`,
which shadows the standard library: pytest's debugging plugin imports pdb,
pdb imports code, and it got this directory instead, so the suite died
with an INTERNALERROR before collecting a single test. Renamed to
translator/ with all 17 imports updated -- 26 tests now pass.
- A LaTeX report builds. That one exposed a hazard rather than a bug:
latexmk wrote its PDF beside the source, and in a course where the built
name matches the submitted one it would have silently overwritten a
tracked deliverable. Both the LaTeX and C++ runners now build into a
gitignored build/, and rebuilding ECOGR leaves `git status` empty.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0172dj34FDpao6wsix8ZuCzE
59 lines
3.8 KiB
Markdown
59 lines
3.8 KiB
Markdown
# Runnability
|
|
|
|
Generated by `./run.sh status`. Do not edit by hand.
|
|
|
|
Status is recorded PER ENVIRONMENT, from `gates/runnability-local.tsv` and
|
|
`gates/runnability-ci.tsv`. A directory that is `runnable` locally and
|
|
`blocked` in CI is the normal case, not drift: the runner has no MATLAB, no
|
|
Unity and no .NET SDK. Each environment rewrites only its own file, so a CI
|
|
run cannot clobber the local column.
|
|
|
|
`-` means that environment has not probed yet.
|
|
|
|
| Course | local | ci | Detail (local) |
|
|
|---|---|---|---|
|
|
| `NotProgramming/DPZ` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/ECOGR` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/EDABA` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/EDABA-LAB` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/EDISE` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/EDISP` | no-code | - | submitted lab reports as PDFs only; no source was produced |
|
|
| `NotProgramming/ELAC` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/EMISY` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/ENUME` | blocked | - | needs MATLAB or Octave (none of: matlab octave) |
|
|
| `NotProgramming/EPHY2` | no-code | - | submitted lab reports as PDFs only; no source was produced |
|
|
| `NotProgramming/EPOGAI` | no-code | - | a presentation only; no source was produced |
|
|
| `NotProgramming/ERPM` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/ESDP1` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/ESOEN` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/MOM` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/SDM` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/SDM2` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/SPD` | runnable | - | builds the report with latexmk |
|
|
| `NotProgramming/STUP` | runnable | - | npm install && npm start |
|
|
| `Programming/AIS` | runnable | - | builds the report with latexmk |
|
|
| `Programming/BD2` | runnable | - | npm install && npm start |
|
|
| `Programming/BSS` | runnable | - | builds the report with latexmk |
|
|
| `Programming/EADS` | runnable | - | compiles each standalone .cpp |
|
|
| `Programming/EARIN` | runnable | - | python3 the entry script |
|
|
| `Programming/ECOAR` | runnable | - | make |
|
|
| `Programming/ECOTE` | runnable | - | python3 /home/kuhy/WUT_Computer_Science/Programming/ECOTE/program/translator/main.py |
|
|
| `Programming/ECRYPT` | no-code | - | test1.py is a 0-byte stub; this course produced no submitted code |
|
|
| `Programming/ECRYPT_PROJECT` | runnable | - | python3 /home/kuhy/WUT_Computer_Science/Programming/ECRYPT_PROJECT/code |
|
|
| `Programming/EGUI` | runnable | - | dotnet build |
|
|
| `Programming/EOOP` | runnable | - | compiles each standalone .cpp |
|
|
| `Programming/EOPSY` | runnable | - | make |
|
|
| `Programming/EPFU` | runnable | - | make |
|
|
| `Programming/E-PSYOPS` | runnable | - | opens in the Unity editor |
|
|
| `Programming/ERSMS-project` | runnable | - | docker compose up |
|
|
| `Programming/NLP` | runnable | - | python3 the entry script |
|
|
| `Programming/PBAD` | runnable | - | jupyter nbconvert --execute |
|
|
| `Programming/PORR` | runnable | - | python3 /home/kuhy/WUT_Computer_Science/Programming/PORR/code |
|
|
| `Programming/PSD` | runnable | - | starts the Kafka/Flink stack (installs packages with sudo) |
|
|
| `Programming/psd_project` | runnable | - | mvn package |
|
|
| `Programming/TRAK` | runnable | - | python3 the entry script |
|
|
| `Programming/twm_4` | runnable | - | jupyter nbconvert --execute |
|
|
| `Programming/USD` | no-code | - | README describes a MetaDrive RL assignment; no implementation was submitted |
|
|
| `Programming/WDWR` | runnable | - | python3 the entry script |
|
|
| `Programming/ZPOB` | runnable | - | builds the report with latexmk |
|