КОМАНДА NEVERLOSE
NeverLose.
Устная защита.
По коду студента.
От лабораторной работы
к проверяемому объяснению.
Gemini API Google ADK MCP
01 / ПРОБЛЕМА
Готовый код ещё
нужно объяснить.
36 def put(self, key, value):37 if key in self.nodes:38 self.nodes[key].value = value39 return
mikonyaa/lab3-timur · учебный репозиторий
ВОПРОС К ЭТОМУ КОДУ
Как изменится порядок вытеснения после повторного put?
Понимание видно в объяснении
причины и последствий.
Вымышленная учебная работа. Фрагмент и вопрос взяты из демонстрационного набора NeverLose.
02 / ПРЕПОДАВАТЕЛЬ
Преподаватель задаёт
рамку защиты.
- →01
Задание
Текст или PDF.
Критерии по рубрике. - →02
Сдачи
Репозитории GitHub.
Зафиксированная версия. - →03
План
Код, вопросы,
мини-задача. - 04
Утверждение
Правки преподавателя.
Приглашение студенту.
Утверждённый план открывает защиту студенту.
Вопросы можно изменить
до начала разговора.
03 / АНАЛИЗ
У каждого вопроса
есть адрес в коде.
ТРЕБОВАНИЕ
Повторный put обновляет
порядок использования.
ФРАГМЕНТ
lru.py:36–46
Версия из импортированного Git SHA.
ПРОВЕРКА ПОНИМАНИЯ
Объяснить эффект.
Предложить исправление.
ИНСТРУМЕНТЫ АГЕНТА
get_assignment_specусловие лабораторнойget_rubricкритерии проверкиget_file_contentsкод выбранной версииget_code_excerptточные строкиsave_question_planплан на проверку преподавателю
Названия инструментов из проекта.
Это схема работы, а не запись нового запроса.
04 / СТУДЕНТ
Разговор о решении,
которое перед глазами.
36 def put(self, key, value):37 if key in self.nodes:38 self.nodes[key].value = value39 return
ВОПРОС
Как изменится порядок вытеснения после повторного put в этом фрагменте?
ОТВЕТ СТУДЕНТА
«При повторном put я только меняю значение, поэтому ключ не становится свежим и может быть вытеснен ошибочно».
МИНИ-ЗАДАЧА
Предложите исправление
и последовательность вызовов,
на которой виден эффект.
05 / ОТЧЁТ
Каждый вывод
можно проверить.
D2 / ОБОСНОВАНИЕ РЕШЕНИЙ
«Словарь нужен для поиска
за O(1), двусвязный список
для удаления известного
узла за O(1)».
Точная реплика Тимура.
Записанный учебный пример.
Уровни по рубрике
- D1 Код2
- D2 Выбор2
- D3 Изменение3
- D4 Проверка1
Тимур / синтетический сценарий.
Не результат живой оценки Gemini.
Цитата
проверяется по ответу
Ссылка на код
ведёт к нужным строкам
Решение преподавателя
открывает результат студенту
06 / ЛИЧНАЯ ПРАКТИКА
Место, где можно
спокойно ошибиться.
| Доступ | Репетиция | Защита |
|---|---|---|
| Студент | Видит свой отчёт | Получает результат после решения |
| Преподаватель | Нет доступа | Проверяет отчёт и принимает решение |
Права проверяет сервер.
Аудио не сохраняется.
07 / АРХИТЕКТУРА
Настоящий Gemini.
Контроль на сервере.
Next.js интерфейс и текстовый канал
FastAPI роли, сессии, SSE и WebSocket
Google ADK + Gemini API анализ, диалог, отчёт
MCP задание, код, план и состояние
ПУБЛИЧНЫЙ MVP
HTTPS
Firebase Auth
Firestore
GitHub читается
в пределах разрешённого доступа.
Текущий запуск: VPS + Developer API.
Agent Engine не развёрнут.
08 / ГОТОВНОСТЬ
Рабочий MVP.
Качество проверяем отдельно.
РЕАЛИЗОВАНО
Полный путь защиты
- Курс, задание, импорт и план
- Разговор и отчёт с цитатами
- Решение и результат студента
- Личная репетиция и роли
СЛЕДУЮЩАЯ ПРОВЕРКА
Пилот с участниками
- Независимая оценка преподавателя
- Время и опыт студента
- Физический микрофон и звук
- Качество на разных работах
Инженерные проверки используют вымышленные работы. Результатов реального пилота пока нет.
КОМАНДА NEVERLOSE
NeverLose.
Понимание видно
в объяснении.
Спасибо. Готовы к вопросам.