lct-16 и половина lct-19: разбор, отчёт, внешний монитор, эталон
Эталонный диалог собирается кодом из фактов и чек-листа: написанный руками, он разошёлся бы с фактами при первой же правке сценария, и курсанта оштрафовали бы за правильный ответ. Отчёт: метрики фактом против норматива со ссылкой, отметка E1 на каждый недобытый факт с эталонным вопросом, расхождение самооценки — что курсант заметил сам, чего не заметил, что отметил зря. Не заметил — самое ценное для разбора. Внешний монитор — не отдельное приложение, а другой режим отрисовки тех же событий: крупный таймер опроса, ход разговора, карточка, после оценки разбор на весь экран. Коррекция преподавателем сохраняет автооценку рядом: видно, что скорректировано и кем. Найдено: все метрики весили одинаково, и курсант, не задавший ни одного вопроса, но заполнивший карточку руками, получал 87 из 100. Предварительные веса (полнота опроса — 4) дают 74; окончательные утверждает методист, вопрос записан в DEBRIEF.md.
This commit is contained in:
parent
25143645d3
commit
fadfa3e479
20 changed files with 781 additions and 9 deletions
|
|
@ -511,6 +511,21 @@ class SelfAssessment(BaseModel):
|
|||
submitted_at: datetime
|
||||
|
||||
|
||||
class SelfAssessmentDiff(BaseModel):
|
||||
"""Расхождение самооценки с автооценкой — отдельный материал для преподавателя.
|
||||
|
||||
Курсант, не заметивший, что пропустил вопрос о пострадавших, — более важный
|
||||
случай, чем сама ошибка (docs/product/DEBRIEF.md).
|
||||
"""
|
||||
|
||||
#: Пропустил и сам это заметил.
|
||||
noticed: list[str] = []
|
||||
#: Пропустил и не заметил — самое ценное для разбора.
|
||||
unnoticed: list[str] = []
|
||||
#: Отметил как пропущенное, хотя на деле спросил.
|
||||
overcautious: list[str] = []
|
||||
|
||||
|
||||
class SessionReport(BaseModel):
|
||||
"""Единица истории: из отчётов складываются профиль, дельта попыток, аналитика."""
|
||||
|
||||
|
|
@ -526,6 +541,8 @@ class SessionReport(BaseModel):
|
|||
missed_checklist: list[str]
|
||||
hints_used: list[HintUsage]
|
||||
self_assessment: SelfAssessment | None = None
|
||||
self_assessment_diff: SelfAssessmentDiff | None = None
|
||||
notes: list[InstructorNoteShown] = []
|
||||
score_auto: float
|
||||
score_final: float
|
||||
overridden_by: str | None = None
|
||||
|
|
|
|||
Loading…
Reference in a new issue