docs(generator): расширен handoff после issue 19
- Зачем:
- следующей сессии нужен актуальный handoff после закрытия issue 19 и внешнего approve.
- Что:
- добавлены итоги коммита 9b0b063, проверки make test и make lint.
- зафиксированы ручные HITL-проверки, suggested skills и обновлённые открытые риски.
- Проверка:
- git diff --check.
This commit is contained in:
@@ -18,6 +18,10 @@
|
|||||||
- Финальный review fix: документация больше не советует обычный
|
- Финальный review fix: документация больше не советует обычный
|
||||||
`make generated-history-check` после backfill-only пути.
|
`make generated-history-check` после backfill-only пути.
|
||||||
Коммит: `8e1c733`.
|
Коммит: `8e1c733`.
|
||||||
|
- Issue 19 закрыта после внешнего Claude review: единые `make test` и
|
||||||
|
`make lint`, подключение корневых контрактных тестов и усиление проверок
|
||||||
|
startup-history.
|
||||||
|
Коммит: `9b0b063`.
|
||||||
|
|
||||||
## Ключевые стыки реализации
|
## Ключевые стыки реализации
|
||||||
|
|
||||||
@@ -27,9 +31,19 @@
|
|||||||
- `airflow/dags/generator_control_dag.py` — pause-check `etl_pipeline` до
|
- `airflow/dags/generator_control_dag.py` — pause-check `etl_pipeline` до
|
||||||
мутирующих веток.
|
мутирующих веток.
|
||||||
- `scripts/check_generated_analytics.sh` — manifest boundary, fail-closed
|
- `scripts/check_generated_analytics.sh` — manifest boundary, fail-closed
|
||||||
live seam, непустой ODS.
|
live seam, непустой ODS и fail-closed проверка DM-витрин.
|
||||||
- `scripts/run_generated_history_runtime_check.sh` — bounded runtime gate для
|
- `scripts/run_generated_history_runtime_check.sh` — bounded runtime gate для
|
||||||
daily-wave + live seam.
|
daily-wave + live seam.
|
||||||
|
- `scripts/run_generator.sh` — `reset` теперь проходит clean-stand guard до
|
||||||
|
запуска live-генератора.
|
||||||
|
- `Makefile` — `make test`, `make lint`, `contract-test`; обычный pytest-вывод
|
||||||
|
тихий, подробность можно включить через `PYTEST_ARGS`.
|
||||||
|
- `generator/src/clickstream_generator/state.py` — любая версия state не `3.0`
|
||||||
|
даёт громкий `UnsupportedStateVersionError`; `from_dict_safe` больше не
|
||||||
|
глотает ошибку старой/неизвестной версии.
|
||||||
|
- `generator/src/clickstream_generator/airflow_control.py` —
|
||||||
|
`target_dag_trigger_error()` покрывает три ветки pause-check без импорта
|
||||||
|
Airflow.
|
||||||
- `superset/create_dashboard.py` — sync ограничен чартами целевого dashboard.
|
- `superset/create_dashboard.py` — sync ограничен чартами целевого dashboard.
|
||||||
- `docs/course/lessons/00_kafka_intro.md`,
|
- `docs/course/lessons/00_kafka_intro.md`,
|
||||||
`docs/course/lessons/01_kafka_to_clickhouse.md`,
|
`docs/course/lessons/01_kafka_to_clickhouse.md`,
|
||||||
@@ -46,6 +60,9 @@
|
|||||||
`bash -n`, `make generated-history-runtime-check`.
|
`bash -n`, `make generated-history-runtime-check`.
|
||||||
- Issue 18: doc `rg`, `git diff --check`,
|
- Issue 18: doc `rg`, `git diff --check`,
|
||||||
`make generated-history-analytics`, `make up`.
|
`make generated-history-analytics`, `make up`.
|
||||||
|
- Issue 19 / commit `9b0b063`: `make contract-test` — 16 passed;
|
||||||
|
`make generator-test` — 190 passed; `make lint` — passed; `make test` —
|
||||||
|
190 generator tests, 16 contract tests, `docker compose config --quiet`.
|
||||||
- Финальный chain review `Gibbs`: initial `CHANGES_REQUESTED`, narrow rerun
|
- Финальный chain review `Gibbs`: initial `CHANGES_REQUESTED`, narrow rerun
|
||||||
`APPROVED`.
|
`APPROVED`.
|
||||||
|
|
||||||
@@ -61,6 +78,10 @@
|
|||||||
rerun `APPROVED`.
|
rerun `APPROVED`.
|
||||||
- Финал: chain reviewer `Gibbs` xhigh; found docs drift around
|
- Финал: chain reviewer `Gibbs` xhigh; found docs drift around
|
||||||
`generated-history-check`; rerun `APPROVED`.
|
`generated-history-check`; rerun `APPROVED`.
|
||||||
|
- После `9b0b063`: внешний Claude review подтвердил закрытие всех девяти
|
||||||
|
находок и дал `APPROVED`. Reviewer не перезапускал Docker-проверки сам, но
|
||||||
|
сверил код, тесты и документы; фактические прогоны были выполнены
|
||||||
|
координатором.
|
||||||
|
|
||||||
## Отклонения процесса
|
## Отклонения процесса
|
||||||
|
|
||||||
@@ -73,11 +94,29 @@
|
|||||||
- Несколько стендовых проверок чистили Docker volumes. Это ожидаемо для issue
|
- Несколько стендовых проверок чистили Docker volumes. Это ожидаемо для issue
|
||||||
16-18 и зафиксировано в журнале.
|
16-18 и зафиксировано в журнале.
|
||||||
|
|
||||||
|
## Что вручную проверить дальше
|
||||||
|
|
||||||
|
- Чистый ручной путь через Airflow UI: `make up`, `make ddl` или `ddl_init`,
|
||||||
|
`airflow dags unpause etl_pipeline`, затем `generator_control` backfill.
|
||||||
|
- Backfill-only путь: `make generated-history-analytics`, затем
|
||||||
|
`CHECK_LIVE_SEAM=0 make generated-history-check`.
|
||||||
|
- Стык backfill/live: `make generated-history-runtime-check`.
|
||||||
|
- Superset: после готового DM открыть dashboard и сверить, что чарты созданы и
|
||||||
|
`Top Countries by Events` читается.
|
||||||
|
- Kafka UI: в уроке 00 должны быть понятны четыре data-топика и служебные
|
||||||
|
`generator_state`, `generator_startup_history_manifest`,
|
||||||
|
`generator_batch_history`.
|
||||||
|
|
||||||
|
## Suggested skills
|
||||||
|
|
||||||
|
- `triage` — если продолжать issue 13: он всё ещё `needs-triage`.
|
||||||
|
- `brainstorm-with-docs` — если перед issue 13 нужно заново согласовать
|
||||||
|
модель доливки истории от слепка.
|
||||||
|
- `coordinator-loop` — только после перевода issue 13 в `ready-for-agent`.
|
||||||
|
- `code-review` — для внешнего прохода по коммитам после ручной проверки.
|
||||||
|
|
||||||
## Открытые риски
|
## Открытые риски
|
||||||
|
|
||||||
- Кросс-линейное ревью другой родословной не выполнено в этом coordinator-loop.
|
- Ручная HITL-проверка после `9b0b063` ещё не выполнена пользователем.
|
||||||
Нужен отдельный проход по коммитам 15-18 и финальному fix.
|
|
||||||
- Issue 13 остаётся `needs-triage`: доливка истории от слепка должна опираться
|
- Issue 13 остаётся `needs-triage`: доливка истории от слепка должна опираться
|
||||||
на закрытые инварианты 15 и 17.
|
на закрытые инварианты 15 и 17.
|
||||||
- Issue 19 `ready-for-agent`: нужны единые `make test` и `make lint`, чтобы
|
|
||||||
будущий коммит-гейт не собирался вручную.
|
|
||||||
|
|||||||
Reference in New Issue
Block a user