В StudyNinja каждая задача знает, какой навык она тренирует. Платформа была готова принимать этот навык и учитывать его везде, где нужно. А потом мы заглянули в данные и увидели, что поле с навыком пустое во всех 1782 попытках учеников на тестовом стенде.
Причин нашлось три, и каждой хватило бы одной. Запрос к графу знаний проходил через навык, но не мог вернуть его наружу. Граф отдавал пустую строку вместо честного «значения нет». А платформа искала навык не в том месте ответа, где он лежал. Когда починили все три, всплыло четвёртое звено.
Самое неприятное в другом. Ничего не падало и не ругалось. Всё, что опиралось на навыки, тихо считалось по темам и выглядело исправным.
Полный разбор с кодом и чек-листом для тех, кто строит похожие системы
Читать далее