Detail reportu: Katana

Týden 19/2026 (od 10.05.) – Výsledky AI analýzy a hodnocení odevzdaného kódu.

📁 Archiv-2026
Zpět

Katana

Období: Týden 19/2026 (od 10.05.) Skupina: tria URL: https://github.com/maximjavorsky-code/Katana.git

1. Splnění základních podmínek

Podmínka Status
Alespoň 3 commity v daném týdnu ✅ SPLNĚNO
Rozestup alespoň 12h mezi 3 commity ❌ NESPLNĚNO
Projektová dokumentace (README, projekt.md) ✅ SPLNĚNO

2. Přehled commitů

3. Výsledky AI analýzy kódu

Metrika Hodnota
Celkové body (AI) 13 / 20 b. (65%)
Náročnost projektu (Index) 3
Počet commitů 3
Změněné soubory 4
Počet přid./odeb. řádků kódu 618

Komentář a zpětná vazba od AI

Ahoj! Jako tvůj asistent jsem prošel tvůj kód za uplynulý týden. Vidím velký kus práce na projektu Pazaak a zajímavý nový nástroj na barvy. Tady je tvé hodnocení:

1. Smysluplnost popisů u commitů [3 body]

Zde nemám co vytknout. Commity jsou jasné, stručné a přesně popisují, co se v kódu změnilo (přidání 2P módu, utility pro barvy, update README). To je v programátorské praxi velmi důležité.

2. Smysluplnost komentářů v kódu [5 bodů]

Kód je rozdělen do logických bloků pomocí komentářů (např. # CORE, # STATE, # UI), což výrazně pomáhá v orientaci. V souboru COLOR_PALET.py oceňuji jasné oddělení funkcí. Jeden bod strhávám za to, že by některé komplexnější části (např. výpočet hex kódu z hashe) snesly krátké vysvětlení "proč", nejen "co" to dělá.

3. Kvalita a srozumitelnost dokumentace a struktura repozitáře [0 bodů]

Tady musím být přísný, protože jsi porušil základní pravidla organizace repozitáře: - Soubor v rootu: Soubor COLOR_PALET.py leží volně v hlavní složce. Podle pravidel musí mít každý projekt svou složku. Měl bys vytvořit složku např. /Utils/ nebo /ColorPalette/. - Typo v názvu: Soubor se jmenuje COLOR_PALET.py, což je překlep (správně "Palette"). - README: Tabulka v README byla sice aktualizována, ale samotný nástroj postrádá svůj vlastní _projekt.md s popisem, který mají ostatní hry.

4. Logika řešení a přemýšlení studenta v Pythonu [5 bodů]

V logice vidím velký potenciál, ale také zásadní chyby, které by způsobily nefunkčnost programu: - Pazaak 2P: Skvělý nápad s využitím sys.executable v subprocess.run, to je mnohem bezpečnější než jen volat "python". - Kritická chyba v pazaak_2p.py: Tvůj hlavní cyklus while running: obsahuje pouze řádek screen.fill. Veškerá další logika vykreslování a ovládání je zde je chyba (špatné odsazení - kód je mimo while loop). Program by tedy hned po spuštění a vykreslení pozadí přestal reagovat na herní logiku. - Logika vykreslování: V souboru pazaak_2p.py máš vykreslování skóre a tlačítek odsazené tak, že se zde je chyba (vykreslí se pouze tehdy, když je na řadě hráč 2), protože tyto příkazy jsou uvnitř větve else (pro turn != 1). Hráč 1 by tedy viděl prázdnou obrazovku. - Color Palette: Použití hashlib pro generování barvy z textu je velmi kreativní a pokročilé řešení!


Celkem získáno bodů: [13 / 65%] z 20 možných

Slovní komentář: Udělal jsi velký pokrok v používání knihovny Pygame a modularizaci kódu. Velmi chválím kreativitu u generátoru barev. Nicméně si dávej velký pozor na odsazování (indentaci), která je v Pythonu naprosto klíčová – tvá hra Pazaak 2P by v tomto stavu nefungovala. Také si ukliď root repozitáře, soubory s kódem tam nemají co dělat.

DIFFICULTY_INDEX: [3]

Kontrolní otázka k obhajobě

V souboru pazaak_2p.py ve funkci use_side používáš random.choice a následně kontroluješ if value is not None – vysvětli mi, za jaké situace by tato podmínka v tvém aktuálním kódu mohla být nepravdivá a co se stane s běžící hrou ve chvíli, kdy hráč vyčerpá všechny čtyři karty ze svého side balíčku a pokusí se zahrát další?