update
This commit is contained in:
@@ -238,16 +238,6 @@ async def init_db():
|
||||
"UPDATE guides SET status = 'error', progress = NULL, error_msg = 'Server-Neustart' "
|
||||
"WHERE status IN ('queued', 'generating')"
|
||||
)
|
||||
# Milestone-Migration auf Score-Skala 0–30: absolviert≥6, verstanden≥12, gemeistert≥18.
|
||||
# Leitet die Meilensteine aus dem aktuellen Score ab (bestehende Timestamps bleiben),
|
||||
# idempotent — nach einem Lauf stabil, im Normalbetrieb deckungsgleich mit der Prüf-Route.
|
||||
await db.execute("UPDATE baustein_progress SET gute_antworten = 30 WHERE gute_antworten > 30") # Alt-Scores deckeln
|
||||
for _spalte, _schwelle in (("absolviert", 6), ("verstanden", 12), ("gemeistert", 18)):
|
||||
await db.execute(
|
||||
f"UPDATE baustein_progress SET {_spalte} = COALESCE({_spalte}, datetime('now')) "
|
||||
f"WHERE gute_antworten >= {_schwelle}"
|
||||
)
|
||||
await db.execute(f"UPDATE baustein_progress SET {_spalte} = NULL WHERE gute_antworten < {_schwelle}")
|
||||
await db.commit()
|
||||
|
||||
|
||||
|
||||
@@ -72,6 +72,7 @@ FRAGETYPEN = {
|
||||
|
||||
# Antwort-Niveau (wie sehr der Kern getroffen ist) → Punkt-Delta.
|
||||
NIVEAUS = {
|
||||
"unbeantwortbar": 0, # Frage selbst kaputt (Randthema/Verweis auf Nichtgezeigtes) → kein Malus
|
||||
"kaum": -1, # < 25 % richtig
|
||||
"teilweise": 0, # 25–49 %
|
||||
"solide": 1, # 50–74 %
|
||||
|
||||
Reference in New Issue
Block a user