Перейти к основному содержимому

ADR-013. Использование задачи — отдельная сущность

Контекст

Одна и та же задача появляется в уроке LMS, в домашке, в туре олимпиады, в диагностике. Без явной сущности использования невозможно различать контексты и считать корректные результаты.

Решение

problem_usage — отдельная сущность task-bank, фиксирующая контекст показа задачи: тип контекста (lesson, homework, competition_tour, diagnostic), context_id, problem_id, problem_version_id, опции показа и видимости.

Последствия

  • результаты в разных контекстах не путаются;
  • одна задача может быть переиспользована без потери истории;
  • evidence на уровне задачи строится через usage.
  • content_export_snapshot из ADR-039 фиксирует grouped export для problem set, activity template или program template, но не заменяет per-problem problem_usage.