fix(generator): усилены проверки startup-history
- Зачем: - коммит-гейт не запускал корневые контрактные тесты, а часть подтверждённых обходов могла снова смешать разные миры генератора. - Что: - добавлены цели make test, make lint и contract-test с тихим pytest-выводом через Docker. - закрыты обходы через generator-reset, неизвестную версию state и fail-open проверку DM-витрин. - усилены поведенческие контракты CHECK_LIVE_SEAM, профиля manifest и pause-check etl_pipeline; обновлены документы и issue 19. - Проверка: - make test; make lint; git diff --check.
This commit is contained in:
@@ -40,7 +40,9 @@
|
||||
|
||||
1. Поднимите стенд: `make up`.
|
||||
2. Если DDL ещё не применён, запустите `ddl_init`.
|
||||
3. Откройте `generator_control` и выберите `operation`.
|
||||
3. Снимите паузу с `etl_pipeline`, если он ещё paused:
|
||||
`docker compose exec -T airflow-webserver airflow dags unpause etl_pipeline`.
|
||||
4. Откройте `generator_control` и выберите `operation`.
|
||||
|
||||
Операции:
|
||||
|
||||
@@ -148,18 +150,21 @@ PROFILE=daily-wave make generator-continue
|
||||
|
||||
У `daily-wave` скорость ×60. Долгий простой стенда создаёт большую дыру в
|
||||
модельном времени: ночь простоя может стать десятками модельных суток без
|
||||
событий. Для чистой демонстрации лучше запустите `make generator-reset` или
|
||||
повторите импорт стартовой истории через `make startup-history-import`.
|
||||
событий. Для чистой демонстрации лучше очистите стенд, затем запустите
|
||||
`make generator-reset` или повторите импорт стартовой истории через
|
||||
`make startup-history-import`.
|
||||
`make generator-reset` начнёт новый live-мир только на чистом стенде; если в
|
||||
Kafka data-топиках или STG уже есть строки, команда попросит `make clean`.
|
||||
|
||||
Если читаемый state есть, но настройки не совпадают, генератор падает с перечнем
|
||||
полей. Это защита от смешения разных миров. Для намеренного нового мира
|
||||
используйте `make generator-reset` или `make clean`.
|
||||
сначала очистите стенд через `make clean`, затем запускайте нужный сценарий.
|
||||
|
||||
После обновления кода старый state может оказаться в старом формате. При
|
||||
`GEN_STATE_RESET=false` это теперь громкий отказ, а не тихий старт с нуля поверх
|
||||
старой истории. Оператору нужно выбрать одно из двух: очистить стенд через
|
||||
`make clean` и заново создать стартовую историю, либо осознанно начать новый мир
|
||||
через `GEN_STATE_RESET=true` / `make generator-reset`.
|
||||
`make clean` и заново создать стартовую историю, либо осознанно начать новый
|
||||
live-мир через `make generator-reset` на чистом стенде.
|
||||
|
||||
После нестандартного мира `make generator-continue` нужно запускать с теми же
|
||||
настройками, что были у backfill/import. При расхождении генератор громко
|
||||
|
||||
Reference in New Issue
Block a user