Пульт мира должен явно показывать модельный день и не заставлять пользователя
принимать служебную logical_date Airflow за дату мира.
При ручной проверке #96 поле «Логическая дата» в форме запуска world_next_day выглядело неизменным и значимым. Фактически это время ручного
запуска Airflow; DAG его не читает, а позицию мира берёт из world_position.
Сначала решить
какой минимальный интерфейс Airflow заранее сообщает, какой модельный день
будет сыгран;
как объяснить или обойти стандартное поле logical_date, если скрыть его в
форме Airflow нельзя;
где после запуска пользователь видит сыгранный день и новую позицию мира.
Существенную развилку провести через brainstorm-with-docs до реализации.
Критерии приёмки
Перед ручным запуском пользователь может определить следующий модельный день.
После запуска видно, какой модельный день был сыгран.
logical_date нигде не описана и не используется как дата модельного мира.
Форма и документация не требуют от пользователя вручную согласовывать две оси времени.
world_next_day, world_live_day и world_live сохраняют нынешнюю семантику позиции и повторов.
Границы
Не переносить источник истины с world_position в logical_date.
Не связывать ось мира с календарём или расписанием Airflow.
Не строить отдельный пользовательский интерфейс без доказанной необходимости.
Не менять генератор, формат событий или слепков заказов.
Сначала прочитать
dags/world_control.py;
docs/adr/0009-world-control.md;
раздел «Пульт мира» в README.md;
актуальную документацию Airflow 3 о ручных запусках и logical_date.
Проверка
ручной запуск world_next_day с параметром days=1;
ручной запуск world_live_day;
проверка world_position и дат в ods.event_v / ods.order_v после успешного запуска.
## Цель
Пульт мира должен явно показывать модельный день и не заставлять пользователя
принимать служебную `logical_date` Airflow за дату мира.
При ручной проверке #96 поле «Логическая дата» в форме запуска
`world_next_day` выглядело неизменным и значимым. Фактически это время ручного
запуска Airflow; DAG его не читает, а позицию мира берёт из `world_position`.
## Сначала решить
- какой минимальный интерфейс Airflow заранее сообщает, какой модельный день
будет сыгран;
- как объяснить или обойти стандартное поле `logical_date`, если скрыть его в
форме Airflow нельзя;
- где после запуска пользователь видит сыгранный день и новую позицию мира.
Существенную развилку провести через `brainstorm-with-docs` до реализации.
## Критерии приёмки
- [ ] Перед ручным запуском пользователь может определить следующий модельный день.
- [ ] После запуска видно, какой модельный день был сыгран.
- [ ] `logical_date` нигде не описана и не используется как дата модельного мира.
- [ ] Форма и документация не требуют от пользователя вручную согласовывать две оси времени.
- [ ] `world_next_day`, `world_live_day` и `world_live` сохраняют нынешнюю семантику позиции и повторов.
## Границы
- Не переносить источник истины с `world_position` в `logical_date`.
- Не связывать ось мира с календарём или расписанием Airflow.
- Не строить отдельный пользовательский интерфейс без доказанной необходимости.
- Не менять генератор, формат событий или слепков заказов.
## Сначала прочитать
- `dags/world_control.py`;
- `docs/adr/0009-world-control.md`;
- раздел «Пульт мира» в `README.md`;
- актуальную документацию Airflow 3 о ручных запусках и `logical_date`.
## Проверка
- ручной запуск `world_next_day` с параметром `days=1`;
- ручной запуск `world_live_day`;
- проверка `world_position` и дат в `ods.event_v` / `ods.order_v` после успешного запуска.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Цель
Пульт мира должен явно показывать модельный день и не заставлять пользователя
принимать служебную
logical_dateAirflow за дату мира.При ручной проверке #96 поле «Логическая дата» в форме запуска
world_next_dayвыглядело неизменным и значимым. Фактически это время ручногозапуска Airflow; DAG его не читает, а позицию мира берёт из
world_position.Сначала решить
будет сыгран;
logical_date, если скрыть его вформе Airflow нельзя;
Существенную развилку провести через
brainstorm-with-docsдо реализации.Критерии приёмки
logical_dateнигде не описана и не используется как дата модельного мира.world_next_day,world_live_dayиworld_liveсохраняют нынешнюю семантику позиции и повторов.Границы
world_positionвlogical_date.Сначала прочитать
dags/world_control.py;docs/adr/0009-world-control.md;README.md;logical_date.Проверка
world_next_dayс параметромdays=1;world_live_day;world_positionи дат вods.event_v/ods.order_vпосле успешного запуска.