From f9a9004fcd0e0e8d337cb4507f931cdaab851207 Mon Sep 17 00:00:00 2001 From: Marek Lenczewski Date: Mon, 30 Mar 2026 23:10:30 +0200 Subject: [PATCH] update --- CLAUDE.md | 18 ++++++++---------- backend/plan.md | 13 +++++++------ 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index d013356..cff7395 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -54,23 +54,20 @@ backend/src/ TaskSchemaController.php — Schema CRUD + week view + toggle DTO/ Request/ — CreateSchemaRequest, UpdateSchemaRequest, UpdateTaskRequest, - ToggleRequest, CreateCategoryRequest, UpdateCategoryRequest + ToggleRequest, CreateCategoryRequest, UpdateCategoryRequest, + SchemaValidationTrait Response/ — TaskResponse, CategoryResponse, WeekViewResponse, DayResponse, ToggleResponse Entity/ Category.php, Task.php, TaskSchema.php Enum/ TaskStatus.php, TaskSchemaStatus.php, TaskSchemaType.php - Exception/ - ValidationException.php — Wraps ConstraintViolationList, handled by ExceptionListener - EventListener/ - ExceptionListener.php — Fängt ValidationException, erzeugt JSON 422 Repository/ CategoryRepository.php, TaskRepository.php, TaskSchemaRepository.php Service/ CategoryManager.php — Category CRUD-Logik - TaskManager.php — Task Update/Delete - TaskSchemaManager.php — Schema CRUD + Toggle + Sync-Auslösung + TaskManager.php — Task Update/Delete/Toggle + TaskSchemaManager.php — Schema CRUD + Sync-Auslösung TaskGenerator.php — Erzeugt Task-Instanzen für Zeiträume TaskSynchronizer.php — Sync nach Schema-Update (löschen/erstellen/reset) DeadlineCalculator.php — Berechnet Fälligkeitsdaten für ein Schema @@ -153,7 +150,7 @@ frontend/src/ - **Enum-Werte**: Deutsch in DB (`aktiv`, `erledigt`, `einzel` etc.), Englisch als PHP-Case-Namen (`Active`, `Completed`, `Single`) - **API-Serialisierung**: Symfony Serializer-Groups für Schema/Category Entities (`schema:read`, `schema:write`, `category:read`, `category:write`), TaskSerializer-Service für Tasks - **Validierung**: Auf Request-DTOs, nicht auf Entities -- **Error-Handling**: `ValidationException` → ExceptionListener → JSON 422; `HttpException` → Symfony built-in +- **Error-Handling**: `HttpException` → Symfony built-in - **Frontend**: Vue 3 Composition API mit `