Go to file
Krzysztof kuhy Rudnicki 94f965fe3a Add the no-binaries gate with a path-scoped allowlist
621 binaries are tracked here and they are supposed to be: 155 PDFs, 275
PNGs, 68 JPGs, the submitted reports and figures. Decision 3 keeps them and
skips the history rewrite, so a blanket block would be wrong. What the gate
is for is stopping NEW junk.

So the allowlist is scoped by path rather than by extension alone. Documents,
figures and datasets are allowed under Programming/ and NotProgramming/;
compiled output (.o .so .a .exe .dll .dylib .class .pyc) is allowed nowhere
and has no entry at all; and the repo root, gates/, scripts/ and .github/
have no entry either, so a binary dropped in the tooling directories is
blocked. The .tgz entries are load-bearing -- EOPSY ships its simulators as
ftp/{sched,memory}.tgz and `make setup` extracts them.

Verified three ways, because a gate that passes everything is vacuous:
  - all 2749 tracked files          -> exit 0
  - probe.exe at root, probe.png in gates/ -> BLOCKED, exit 1
  - a real submitted PDF            -> exit 0
plus shellcheck clean.

The script is a copy of testsAndMisc's, which is where this gate lives today
-- it is not in the shared ~/utils set. The header says so and says to move
it to ~/utils rather than let the two drift, since a hand-copied gate is what
produced four forks of the 250-line cap.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0172dj34FDpao6wsix8ZuCzE
2026-08-28 17:37:53 +02:00
.vscode Merge branch 'main' of https://github.com/kuhyx/WUT_Computer_Science 2025-04-21 17:21:13 +02:00
gates Declare vendored subtrees and park the data-txt cap decision 2026-08-28 17:31:30 +02:00
NotProgramming Untrack 189 regenerable artifacts and close the silent-ignore trap 2026-08-28 17:35:38 +02:00
Programming Untrack 189 regenerable artifacts and close the silent-ignore trap 2026-08-28 17:35:38 +02:00
scripts Add the no-binaries gate with a path-scoped allowlist 2026-08-28 17:37:53 +02:00
.binary-allowlist Add the no-binaries gate with a path-scoped allowlist 2026-08-28 17:37:53 +02:00
.gitignore Untrack 189 regenerable artifacts and close the silent-ignore trap 2026-08-28 17:35:38 +02:00
README.md Revise README to reflect group project inclusion 2026-02-06 22:23:55 +01:00
TODO-file-length-250.md Declare vendored subtrees and park the data-txt cap decision 2026-08-28 17:31:30 +02:00

WUT_Computer_Science

This repository aims to consolidate every single project I did solo during my Computer Science course on Warsaw University of Technology
It does not include projects I did in groups like:
EARIN
EDABA
ECRYPT
EOPSY

Thanks to some git magic this repo now CONTAINS all the group projects alongside with all proper contributors