146 Commits
Author SHA1 Message Date
JannisandClaude Sonnet 5.5 4d9842f9bd docs: ADR-0022 chat extensions, roadmap phase 11b, architecture
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 19:06:51 +02:00
JannisandClaude Sonnet 5.5 5e67075f8a test: integration tests for AI chat channel and GIF feature flag
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 19:05:47 +02:00
Jannis ab55a0dd4f docs: phase 11a in roadmap and architecture 2026-10-10 19:05:40 +02:00
JannisandClaude Sonnet 5.5 034b2ef790 refactor: share the AI draft pipeline between endpoint and upcoming automation
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 19:04:17 +02:00
Jannis 5be06b247c test: integration tests for dashboard notes and shopping plausibility 2026-10-10 19:03:25 +02:00
JannisandClaude Sonnet 5.5 3d22ed8747 test: unit tests for chat extensions
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 18:59:17 +02:00
JannisandClaude Sonnet 5.5 bd6e272f57 feat: optional AI cross-check of unclear number answers
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 18:58:02 +02:00
JannisandClaude Sonnet 5.5 154e400d13 test: bUnit tests for emoji, GIF and AI chat
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 18:57:57 +02:00
JannisandClaude Sonnet 5.5 19269277e2 docs: describe the meal wishlist in ADR-0013, architecture and roadmap
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 18:56:58 +02:00
JannisandClaude Sonnet 5.5 66b5f4e751 feat: emoji picker, GIF search dialog and AI chat entry in the chat UI
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 18:55:12 +02:00
Jannis 8dc923cd6e feat: dashboard info tile UI with edit dialog, quick-add confirmation, tests 2026-10-10 18:55:09 +02:00
JannisandClaude Sonnet 5.5 5ce407f401 test: cover the meal wishlist (rules, validators, bUnit, integration); fix: bind wishlist search and sort as expressions
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 18:54:31 +02:00
JannisandClaude Sonnet 5.5 b612c3345b feat: migration Phase11bChat
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 18:52:41 +02:00
JannisandClaude Sonnet 5.5 773f5e5b1e feat: AI chat channel, GIF search proxy and settings (backend)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 18:52:21 +02:00
Jannis 545162479c feat: show who added a shopping item, confirm implausible child entries 2026-10-10 18:50:53 +02:00
JannisandClaude Sonnet 5.5 019060ccea feat: turn the dish catalog into a permanent meal wishlist (domain, api, migration, ui)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 18:49:58 +02:00
Jannis b7dac20fc2 feat: rule-based plausibility check for children's shopping entries 2026-10-10 18:49:13 +02:00
JannisandClaude Sonnet 5.5 49b779f3b1 feat: chat channel kind Ai, ChatAssistant purpose and chat rules
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 18:48:45 +02:00
JannisandClaude Sonnet 5.5 d2ef08e17b feat: show the confirmed grade in the head of the child's result page
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 18:48:36 +02:00
Jannis 2473ecd539 feat: dashboard info notes (entity, permission, endpoints, migration) 2026-10-10 18:47:52 +02:00
Jannis f98b1c21c4 test: adjust unit rule for numbers 2026-10-10 18:47:47 +02:00
JannisandClaude Sonnet 5.5 62b3afe9c8 feat: read numbers with units and euro/cent spellings tolerantly
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 18:47:17 +02:00
Jannis 81ab2af5e3 test: cover account settings page 2026-10-10 18:46:19 +02:00
Jannis c04fa1df44 feat: add account settings page with theme choice 2026-10-10 18:45:26 +02:00
JannisandClaude Sonnet 5.5 cb70a2f0a6 docs: add chat, meal, learning and dashboard ideas to the roadmap backlog
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 17:24:22 +02:00
JannisandClaude Sonnet 5.5 50854cf237 fix: describe the AI draft JSON shape in the prompt and accept a differently named item list
Local models may ignore the response schema (e.g. returning "exercises" instead of "items"), which made every draft fail.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 16:48:28 +02:00
JannisandClaude Sonnet 5.5 606db3990c test: share one fake AI api between learning bUnit tests after merging 10b and 10c
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 15:28:06 +02:00
JannisandClaude Sonnet 5.5 a8f763cfeb merge: Phase 10c paper solutions by photo
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 15:21:54 +02:00
JannisandClaude Sonnet 5.5 a6bc071efc fix: save AI photo suggestions one by one, allow long AI calls, plain AI reasons; docs: phase 10c in ADR-0021, roadmap, architecture
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 15:15:41 +02:00
JannisandClaude Sonnet 5.5 86bdcdf379 merge: Phase 10b AI draft generation
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:58:23 +02:00
JannisandClaude Sonnet 5.5 b3d0546d6b test: cover photo rules, AI grading, mapper leaks and photo/AI/retention endpoints
Unit tests for signature/size/retention rules, strict AI schema and confidence handling,
prompt content and child DTO leak checks; integration tests for rights (404 for strangers),
deadline 409, invalid files, fake-server AI grading including missing provider/opt-in cases,
and retention. Retention 0 deletes photos at confirmation; photos past retention are purged lazily.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:58:19 +02:00
JannisandClaude Sonnet 5.5 acfbfaa4b2 docs: document learning AI drafts (phase 10b) in ADR-0021, roadmap and architecture
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:52:29 +02:00
JannisandClaude Sonnet 5.5 2cd976ee3e feat: add AI draft assistant to the learning UI
Adds the Mit KI erstellen dialog to the parent overview (shown from
GET /api/ai/status), a cloud privacy hint, the review report and a
KI-generiert, bitte pruefen notice in the set editor. bUnit coverage for
visibility, dialog states and escaped output.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:51:16 +02:00
JannisandClaude Sonnet 5.5 b68c708113 feat: add AI draft endpoint for learning sheets with server-side checks
POST /api/learning/sets/ai-draft (LearningManage + AiUse) builds a fixed system
prompt from validated parameters, validates every returned task, recomputes
number solutions and stores the result as an unassigned draft with provenance.
AiStatusDto reports whether the generation provider is a cloud provider.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:48:00 +02:00
JannisandClaude Sonnet 5.5 32091a825e feat: photo upload for paper tasks, photo review and AI photo grading UI
PhotoUpload component (camera and file picker, preview, replace/remove), photo next to task and
model solution in AttemptReview, parent-triggered AI grading button visible only when the status
offers photo grading, retention setting in the admin settings editor, bUnit coverage.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:44:40 +02:00
JannisandClaude Sonnet 5.5 225f02a18b feat: learning photos, paper tasks and AI photo grading (phase 10c backend)
Adds LearningPhoto (bytes in DB, signature check, 5 MB limit), upload/delete for the target child
while the attempt runs, retrieval for parents and the child only (404 otherwise, no-store, nosniff),
a retention service driven by a new family setting, and the parent-triggered AI photo grading
(explicit provider, image opt-in, strict schema, confidence, low confidence stays open).
Migration Phase10cPhotos.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:41:40 +02:00
JannisandClaude Sonnet 5.5 f40818269e feat: add safe arithmetic expression evaluator for checking AI math solutions
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:36:46 +02:00
JannisandClaude Sonnet 5.5 e1c1492fc5 merge: Phase 10a learning tasks
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:31:20 +02:00
JannisandClaude Sonnet 5.5 cb48c542af fix: skip deleted sheets when auto-submitting, log rejected writes, test the background sweeper
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:28:09 +02:00
JannisandClaude Sonnet 5.5 8fb34ba6b9 docs: document learning tasks phase 10a in ADR-0021, roadmap, architecture and dashboard ADR
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:18:26 +02:00
JannisandClaude Sonnet 5.5 d1ff7dd291 fix: show only parent comments as feedback reasons to children
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:18:26 +02:00
JannisandClaude Sonnet 5.5 24a6a1aa66 test: cover learning UI with bUnit including controllable exam clock
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:11:28 +02:00
JannisandClaude Sonnet 5.5 bab50cfe90 feat: add learning UI with kid runner, exam countdown, parent editor and review
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 14:11:27 +02:00
JannisandClaude Sonnet 5.5 42406598c7 test: cover learning rules, grading, grade scales, validators and child DTO visibility
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 13:52:38 +02:00
JannisandClaude Sonnet 5.5 cc129eb1e5 test: cover learning API flows, rights, time limit, points and live events
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 13:49:09 +02:00
JannisandClaude Sonnet 5.5 9c72a6f768 feat: add learning API slice with attempts, review, points and dashboard tile
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 13:33:25 +02:00
JannisandClaude Sonnet 5.5 5f54d10223 feat: add learning domain, grading rules, permissions and Phase10aLearning migration
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 13:28:21 +02:00
JannisandClaude Sonnet 5.5 e1cb189c54 docs: record learning task decisions and AI integration progress
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 11:03:29 +02:00
JannisandClaude Sonnet 5.5 7fad82ae7a test: cover AI rules, adapters, administration UI and integration flows
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 11:03:28 +02:00
JannisandClaude Sonnet 5.5 65993c268b feat: add AI administration tab with provider dialog, test and usage overview
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-10 11:03:28 +02:00