Lab assignment management UI and student variant view

- progress-service: POST /api/v1/assign (manual variant), GET /api/v1/assignments?labId=
  (enriched assignments), fixed enrich() to return real variant number/title/statement
- gateway: routes for /api/v1/assign and /api/v1/levels (exact paths)
- web: lab detail page shows students grouped with level and variant selects,
  group filter, distribute/redistribute buttons, source badge (auto/manual)
- web: student dashboard renders variant statement via libs/markdown (spoilers,
  code highlight, sanitized)
- academic-service: unquote YAML front-matter values (variant numbers were quoted)
- academic-service: LabLevelDetail.id for level references
This commit is contained in:
2026-09-10 23:25:36 +03:00
parent 84532adbff
commit 0de6d3f2d8
17 changed files with 408 additions and 67 deletions

View File

@@ -11,6 +11,7 @@ dependencies {
implementation(libs.springBootStarterActuator)
implementation(project(":libs:common-http"))
implementation(project(":libs:markdown"))
developmentOnly(platform(libs.springBootBom))
developmentOnly(libs.springBootDevtools)