AutoFeedback API

Result 4e30fafc-89a3-4b36-86b2-3c856e2637cd

{
  "llm" : {
    "feedback" : "# Exercise: parking\n\n### Correctness\n- `FlatRateCard.cost()` liefert immer 150 CHF, unabhängig davon, ob überhaupt geparkt wurde; damit wird die Beispielausgabe/der erwartete Gesamtumsatz sehr wahrscheinlich nicht erreicht.\n- In `GroupCard` ist `person == 0` erlaubt (`person < 0` wird verboten). Laut Tabelle beginnt es bei „bis 5“ Personen; 0 Personen ist inhaltlich fragwürdig und könnte gegen die Aufgabenannahme „Anzahl Personen“ verstoßen.\n\n### Suggestion\n- Überlege bei der `FlatRateCard`, wann genau die Monatskosten verrechnet werden sollen: pro Abrechnungsperiode nur dann, wenn die Karte in dieser Periode überhaupt benutzt wurde, oder immer sobald sie registriert ist? Vergleiche das mit dem erwarteten Gesamtumsatz (156.75 CHF), um die richtige Logik abzuleiten.\n- Entscheide für `GroupCard`, ob 0 Personen sinnvoll sein soll. Falls nicht: passe die Validierung so an, dass die kleinste erlaubte Personenzahl ausgeschlossen/eingeschlossen wird, wie es die Aufgabenbeschreibung nahelegt.\n\n### Code Style\n- In `FlatRateCard` ist `totalTime` aktuell nutzlos (du speicherst Zeit, verwendest sie aber nie für die Kostenberechnung). Entweder entfernen oder so nutzen, dass es zur beabsichtigten Logik passt.\n- In `GroupCard`/`IndividualCard` fehlen teilweise `@Override`-Annotationen (funktioniert trotzdem, aber hilft beim Compiler-Check und Lesbarkeit).\n- Benennung: `person` wirkt wie eine einzelne Person; für „Anzahl Personen“ wäre ein Name wie `persons`/`personCount` klarer.\n\n\n# Exercise: labyrinth\n\n### Correctness\n- `BacktrackingAlgorithm.navigate` hat eine leere `while (!figure.isGoalReached()) { }`-Schleife und führt keine Bewegungen aus → das Programm hängt (Endlosschleife) und erreicht das Ziel nie.\n- In `LabyrinthApp` verwendest Du `new TryStraightFirst()`, obwohl in Teil (c) für die letzten Levels ein `BacktrackingAlgorithm` eingesetzt werden soll → damit wirst Du die letzten Levels voraussichtlich nicht schaffen.\n\n### Suggestion\n- Sorge dafür, dass in jeder Iteration Deiner Schleife im `BacktrackingAlgorithm` garantiert **mindestens eine Aktion** passiert (drehen oder vorwärts), oder dass Du sonst die Schleife verlässt; eine leere Schleife ohne Zustandsänderung kann das Ziel nie erreichen.\n- Für Backtracking brauchst Du irgendeine Form von “Merken”, wo Du herkommst bzw. welche Abzweigungen Du schon ausprobiert hast (z.B. eine Struktur, die Entscheidungen/Schritte speichert), und bei einer Sackgasse musst Du konsequent Schritte “rückgängig” machen, bis wieder eine Kreuzung mit unbenutztem Ausgang gefunden wird.\n- Tausche in `LabyrinthApp` den verwendeten Algorithmus so aus, dass wirklich Dein Backtracking-Ansatz ausgeführt wird, sobald Du ihn implementiert hast.\n\n### Code Style\n- In `BacktrackingAlgorithm` sind aktuell Variablen/Methoden angelegt, aber unbenutzt bzw. leer (`way`, `deadEnd`, `navigateHelper`, `backTrackTolastCorssing`) – entweder implementieren oder entfernen, damit der Code nicht “halb fertig” wirkt.\n- Der Methodenname `backTrackTolastCorssing` hat Tippfehler (“lastCorssing”) und ist schwer lesbar; sauber benennen hilft Dir später auch beim Debuggen.\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"
  }
}