- Зачем:
- относительные ссылки на каталоги sql/ и data/ давали 404 на GitHub Pages;
- em-dash в заголовках нарушает правило AGENTS.md (расходятся слаги GitHub/MkDocs);
- 2-пробельная вложенность и списки без пустой строки ломали рендер в MkDocs
- Что:
- ссылки на папки заменены на GitHub-tree-ссылки (работают на обеих платформах);
- в 26 заголовках « — » заменено на «: » или убрано (README, SCD, DataVault, домашка);
- пустая строка перед списком «Главные правила» в DataVault;
- вложенные списки DataVault переведены на 4-пробельный отступ
- Проверка:
- mkdocs build --strict (без ошибок);
- grep по репо — якорных ссылок на старые слаги заголовков нет;
- grep по site/dwh-modeling/*.html — списки рендерятся <ul>/<li>, вложенность сохранена
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- роадмап нуждается в презентабельном виде с навигацией и поиском, а не только GitHub README.
- Что:
- создан mkdocs.yml (Material, docs_dir: ., поиск на русском, тёмная/светлая тема).
- создан .github/workflows/deploy-site.yml (push в main → сборка → GitHub Pages).
- адаптирован Markdown для dual compatibility (GitHub + MkDocs): пустые строки перед списками, отступы 2sp→4sp, заголовки README #→## для корректного TOC.
- заменены em-dash на запятые в 4 заголовках dwh-modeling/README.md (фикс расхождения якорей).
- добавлены правила Markdown Style и команды MkDocs/Playwright в AGENTS.md.
- Проверка:
- uv run --with 'mkdocs-material==9.6.14' --with 'mkdocs-same-dir==0.1.3' mkdocs build --strict
- customer_segment: убрана несуществующая колонка dim_customer, заменена
на CASE по сумме (как в 06_dml_dm.sql)
- MATERIALIZED VIEW заменён на TRUNCATE + INSERT INTO (как в скриптах),
упоминание MV оставлено в ремарке
- добавлен комментарий о недетерминированности CURRENT_DATE в bounds
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Зачем:
- в статье и скриптах обнаружены фактические ошибки и несостыковки
- Что:
- README: f.order_date -> d.date_actual в примере витрины (колонки order_date нет в fact_sales)
- README: «календарь на 10 лет» -> «5 лет» (соответствует генерации 2023-2027 в скрипте)
- 09_solution: bounds CTE теперь использует CURRENT_DATE для открытых интервалов (valid_to IS NULL)
- 09_solution: комментарий про дубли в STG при повторном запуске блока 3
- 05_ddl_dm: выравнивание total_line_items
- AGENTS.md: обновлён диапазон скриптов 01-09
- Проверка:
- визуальная проверка diff
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Зачем:
- разделы 3NF и Звезда были слишком краткими для учебного материала,
менти не видел разницу между моделями на практике
- Что:
- 3NF: добавлена mermaid-диаграмма с dim_city и SQL-запрос (3 JOIN)
- Звезда: добавлена явная связь с разделом 5, SQL-запрос (2 JOIN) для контраста
- оба примера отвечают на один вопрос: «сколько потратил клиент из Москвы?»
- Проверка:
- визуальная проверка diff
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Зачем:
- убрать путаницу, дублирование и неточности в демо-скриптах и домашке
- Что:
- CSV: заголовок load_ts → _load_ts во всех файлах (совпадает с именем в таблицах)
- домашка: убраны оговорки о расхождении load_ts/_load_ts, добавлена ссылка на эталонное решение
- 09_dml_hw_customer_status_solution.sql: эталонное решение скопировано из ветки solution/hw_customer_status в основную
- 02_dml: добавлена карта загрузки в шапку (что откуда строится)
- 05_ddl_dm + 06_dml_dm: total_orders → total_line_items (название точнее отражает содержимое)
- Проверка:
- визуальная проверка diff, скрипты не запускались (демо-стенд не поднят)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>