lct-18: профиль курсанта — радар, история попыток, дельта

Работа над ошибками становится измеримым циклом: посмотрел разбор →
попробовал снова → увидел дельту по оценке, времени опроса и добытым
фактам.

В отчёт занятия добавлена сводка числами — время опроса, факты,
подсказки, коды ошибок. Без неё дельту пришлось бы вытаскивать разбором
текста метрик («94 с»), а это путь к тихим ошибкам.

Радар — среднее по попыткам: одна неудачная попытка не определяет
курсанта.

Проверено сквозным тестом на живой базе: два занятия одного курсанта
дают две попытки и посчитанную дельту. Проверка доступности базы в тесте
была ложной — синхронного драйвера в проекте нет, и тест молча
пропускался.
This commit is contained in:
Ivan Gerasimov 2026-09-17 21:42:12 +03:00
commit 38082e2af3
8 changed files with 412 additions and 0 deletions

View file

@ -2,6 +2,7 @@ import { createBrowserRouter, Navigate } from "react-router-dom";
import { Call } from "@/pages/trainee/Call";
import { Instructor } from "@/pages/instructor/Instructor";
import { Profile } from "@/pages/profile/Profile";
import { Wall } from "@/pages/wall/Wall";
import { Stub } from "@/shared/ui/Stub";
@ -12,5 +13,6 @@ export const router = createBrowserRouter([
{ path: "/trainee", element: <Call /> },
{ path: "/instructor", element: <Instructor /> },
{ path: "/wall", element: <Wall /> },
{ path: "/profile", element: <Profile /> },
{ path: "/dds", element: <Stub title="АРМ диспетчера ДДС" card="lct-20" /> },
]);