feat(labs): четыре расследования выручки и учебный доступ #255

Merged
ddmitry merged 7 commits from labs/revenue-investigations into main 2026-09-22 12:13:35 +03:00
Showing only changes of commit ddb186f841 - Show all commits
+41 -16
View File
@@ -149,28 +149,53 @@
## 4. Факультативы — пять разделов ## 4. Факультативы — пять разделов
Ниже перечислены только названия сюжетов и их уроки. Материал, формы и способы Ниже перечислены сюжеты, их уроки и принятые решения по форме заданий. Исходный
проверки остаются в [инвентаризации](../research/2026-08-31-labs-inventory.md). материал и способы проверки — в
[инвентаризации](../research/2026-08-31-labs-inventory.md).
### Почему выручка не сходится ### Почему выручка не сходится
Этот раздел рекомендован первым из факультативов. Он открывается после ступени Этот раздел рекомендован первым из факультативов и открывается после ступени
1 основной программы: материал живет на стенде с этапа 6. 1 основной программы. Шесть сюжетов собраны в четыре лабораторные: три
расследования готовых данных и одно наблюдение во времени. Опоздания,
изменение выручки и история отмен используют одну историю заказов, поэтому
для них выбрана общая работа вместо трех отдельных.
- **Почему трекер недосчитывает покупки (#186).** Разрыв воронки подтверждений - **Куда пропали покупки (#186).** Учащийся сравнивает подтверждения и события
показывает потерянные события и границу доверия к двум источникам. покупки, находит заказы без события и объясняет разрыв воронки конкретными
заказами.
- **Почему повтор покупки завышает выручку (#187).** Движок убирает технический - **Почему повтор покупки завышает выручку (#187).** Движок убирает технический
дубль строки, а повтор одной покупки приходится находить по деловому ключу. дубль строки, а повтор одной покупки приходится находить по деловому ключу.
- **Какая позиция объясняет разницу в сумме.** Расхождение суммы нужно Учащийся сравнивает сумму событий с суммой по уникальным покупкам и
разложить до конкретной вычеркнутой позиции и объяснить до копейки. подтверждает, что разница равна вкладу повторов. Другие причины расхождения
- **Был ли отмененный заказ оплачен.** Текущее состояние не заменяет историю, а с выручкой магазина при этом остаются.
некоторые различия после истечения срока хранения сырых данных уже не - **Какая позиция объясняет разницу в сумме.** Учащийся сопоставляет корзину
восстановить. из сырого `ecommerce` с позициями заказа, находит удаленный товар и объясняет
- **Когда отчет за день можно считать окончательным (#188).** Отчет за день разницу до копейки. Для точных цен нужен исходный JSON: в готовых массивах
становится окончательным лишь после того, как источник больше не может событий цены округлены до рублей.
изменить этот день. - **Почему вчерашняя выручка меняется сегодня (#188).** Учащийся наблюдает один
- **Почему выручка за день еще меняется.** Внутри окна изменяемости выручка день по мере поступления слепков: появляются опоздавшие заказы, меняются
движется, а после закрытия дня фиксируется. статусы и выручка. По сохраненным состояниям объясняет причины изменений,
определяет момент закрытия дня и отделяет доказанную оплату отмененного
заказа от случаев, в которых историю оплаты восстановить нельзя.
В четвертой лабораторной учащийся сам собирает историю одного дня оформления
заказов. Перед наблюдением он ставит `world_live` на паузу и дожидается
завершения начатых прогонов. Затем продвигает
мир по одному модельному дню через `world_next_day` и после каждого запуска
выполняет `etl_pipeline`. Только после завершения конвейера сохраняет дату
слепка, состояния отдельных заказов и выручку выбранного дня. Эти результаты
позволяют сравнить наблюдения даже после удаления сырых слепков. Готовые
слепки и сочетание готового примера с собственным наблюдением отклонены:
учащийся может получить нужную историю на стенде и сам увидеть, как новые
данные меняют уже рассчитанный отчет.
День считается закрытым после получения и обработки последнего слепка
семидневного окна изменяемости; этот слепок доставляется следующим модельным
днем. Одного совпадения сумм в соседних наблюдениях для такого вывода
недостаточно. История отмен тоже имеет границу: оплата и отмена между двумя
дневными слепками могут остаться невидимыми. Отсутствие наблюдаемой оплаты
не доказывает, что оплаты не было.
### Тонкий анализ данных ### Тонкий анализ данных