{
"llm" : {
"feedback" : "# Exercise: parking\n\nLlm Evaluation ist für diese Aufgabe deaktiviert. Entferne die .llmignore Datei vom Package der Aufgabe.\n\n\n# Exercise: labyrinth\n\n### Correctness\n- In `LabyrinthApp` startest du die Levels bei `level = 5`; die Aufgabe verlangt, dass der Algorithmus im selben Grundprogramm für alle Levels eingesetzt wird (insbesondere sollen mit `TryStraightFirst` die ersten vier Levels auch tatsächlich gespielt werden).\n- Dein `BacktrackingAlgorithm` macht beim „Zurückgehen“ (`figure.moveForward()` nach dem Rekursions-Return) keinen Richtungswechsel um 180°; dadurch gehst du nicht zurück zum vorherigen Feld, sondern läufst weiter vorwärts und riskierst sehr schnell einen `GameOver`.\n- `BacktrackingAlgorithm` markiert/merkt sich keine besuchten Positionen (row/col/dir) und hat damit keine Absicherung gegen Endlosschleifen in Labyrinthen mit Zyklen; damit ist er nicht „allgemein“ für alle Labyrinthe, wie gefordert.\n- `BacktrackingAlgorithm` verändert am Anfang immer die Richtung (`turnLeft()`), ohne zu prüfen/zu begründen; das kann dazu führen, dass du systematisch eine mögliche Richtung verpasst bzw. nicht alle Abzweigungen sauber ausprobierst.\n\n### Suggestion\n- Lass in `LabyrinthApp` die Schleife wieder bei Level 1 starten und wechsle den Algorithmus so, wie es in der Aufgabe beschrieben ist (erst `StupidAlgorithm`, dann `TryStraightFirst`, dann `BacktrackingAlgorithm`).\n- Überlege dir für Backtracking ganz explizit: „Wie komme ich nach einem fehlgeschlagenen Rekursionspfad garantiert wieder auf das Feld zurück, von dem ich gestartet bin?“ Dazu gehört typischerweise ein Umdrehen, ein Schritt, und wieder die ursprüngliche Ausrichtung herstellen.\n- Damit der Algorithmus wirklich allgemein wird: Nutze `row()`/`col()` (und evtl. `dir()`) um dir zu merken, welche Zustände du schon besucht hast, und brich ab, wenn du in denselben Zustand erneut reinkommst.\n- Prüfe deine Schleifenlogik: Du iterierst `i < 3` und drehst dabei rechts/links – stelle sicher, dass du damit wirklich alle relevanten Richtungen (inkl. „zurück“) in einer konsistenten Reihenfolge ausprobierst, ohne eine Richtung doppelt zu prüfen oder eine auszulassen.\n\n### Code Style\n- Du hast in `LabyrinthGame` `FRAME_TIME` von 30 auf 5 geändert; solche Änderungen an der vorgegebenen Infrastruktur würde ich vermeiden und stattdessen nur über deine Algorithmen arbeiten.\n- In `BacktrackingAlgorithm` ist die Rekursion ohne erklärende Kommentare schwer nachzuvollziehen; kurze Kommentare zu „try direction“, „recurse“, „backtrack step“ würden die Lesbarkeit stark verbessern.\n- Die `navigate`-Methode in `BacktrackingAlgorithm` ist aktuell verantwortlich für sehr viele Dinge (Richtung initial ändern, 3er-Schleife, Rekursion, Backtrack) – überlege, ob du das in kleine private Hilfsmethoden zerlegen willst (z.B. „tryMoveAndRecurse“), damit die Logik klarer wird.\n\n\n# Exercise: swissmap\n\nLlm Evaluation ist für diese Aufgabe deaktiviert. Entferne die .llmignore Datei vom Package der Aufgabe.\n\n\n# Exercise: visualizer\n\nLlm Evaluation ist für diese Aufgabe deaktiviert. Entferne die .llmignore Datei vom Package der Aufgabe.\n",
"status" : "SUCCESS"
}
}