rework: уроки 1-12 — одна концепция на урок (стиль 13-25) - #22
Conversation
- New app/lessons_1_12.py: 12 reworked lessons, 1 concept each, 3 theory cards (concept / deepening / typical mistake), choice+term+code questions with reference solutions - content.py: import LESSONS_1_12, exams updated to new question ids - tests: 1-12 identity/style/reference/example-exec tests (mirroring 13-25), prereq test for lessons 4-6 updated to new ids - docs/CURRICULUM.md: rows 1 and 3 match reworked content pytest 42/42, ruff check+format OK, pyright 0 errors
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 564a3e1c95
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| "variables-term", | ||
| "strings-input-choice", | ||
| "hello-code", | ||
| "variables-code", |
There was a problem hiding this comment.
Preserve old exam totals when awarding repeat XP
For existing users who passed this four-question exam with 3/4, expanding it to five questions lets them earn the 50 XP reward a second time after upgrading and passing again. save_exam() determines previously_passed using the incoming total_count, so the stored 3/4 is treated as 3/5; the same regression applies to the expanded logic and structures exams. Compare the previous score against its stored total_count or migrate these progress records before changing the exam sizes.
Useful? React with 👍 / 👎.
Реворк уроков 1–12: 1 урок = 1 концепция
Уроки 1–12 (первая редакция от 14.07) переписаны по жёсткому стандарту: одна новая концепция на урок, тест строго по теории урока, спиральные повторы пройденного. Стиль и структура данных — как у рукописных уроков 13–25 (PR #17): 3 карты теории (концепция / углубление / «Типичная ошибка»), примеры с
# Вывод:, вопросы choice/term/code, у code-задач естьreference-решение.Нумерация не меняется: id уроков, порядок 1–12 и модули прежние — уроки 13–25 и 26–120 не затронуты.
Было → стало
=Вытесненные концепции уже покрыты курсом: elif → 33, break → 35, append/pop/len-методы → 25, set → 32, обход файла → 58, методы класса → 65–68, lower/strip → 17–20.
Вопросы к Максиму
Прочие изменения
app/lessons_1_12.py— новый файл с уроками (content.py импортирует его, старые инлайн-уроки убраны).{lesson}-choice/-term/-code).docs/CURRICULUM.md— строки разделов 1 и 3 приведены к новому содержанию.Проверки
НЕ МЕРЖИТЬ без ревью Максима — это учебный контент, методику смотрит владелец курса.