docs(orders): закрыты находки холодного ревью дефектов
Зачем: холодная сверка сборки с резолюциями нашла два завышенных обещания, недовнесённую правку и битую ссылку (DEF-1, DEF-2, DEF-3, DEF-5); DEF-4 отложен до триажа вычитания #84. Что: обещание «переливает ровно тот слепок» смягчено до штатного прогона с хвостом после падения (спека §9 и ADR 0008); довод против сдвига created_at перестроен на канон аудита источника (§4); в §7 мастер-спеки довнесено чтение amount_delta через сравнение позиций (#72); ссылка в §1 ведёт на раздел 8. Проверка: узкая перепроверка тем же ревьюером. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -79,7 +79,7 @@
|
||||
В модели строка заказа в базе источника создаётся синхронно с покупкой, поэтому
|
||||
день рождения заказа и день создания строки совпадают. Смысл полей от этого не
|
||||
меняется: `created_at` и `updated_at` — аудит строки по часам базы источника,
|
||||
бизнес-время покупки живёт в `purchase.UTCEventTime` (раздел 6).
|
||||
бизнес-время покупки живёт в `purchase.UTCEventTime` (раздел 8).
|
||||
|
||||
Отклонено: *выводить заказ разбором собственного вывода* (`purchaseID`, сырой
|
||||
`ecommerce`) — бэкенд стал бы читателем трекера ровно там, где стенд учит, что
|
||||
@@ -264,9 +264,11 @@ d…d+δ−1 её нет, а с d+δ она появляется в том со
|
||||
перестало бы быть верным; при δ ≤ 2 у всякого заказа слепков не меньше пяти.
|
||||
Легенда: заказ ушёл в ручную обработку и попал в выгрузку позже. Следствие для
|
||||
переливки не ново: у прошлых дней окна меняется и состав, а не только суммы —
|
||||
«дыхание» статусов это уже требовало. Отклонено: *сдвиг `created_at`* — заказ
|
||||
уехал бы в чужую партицию, и «выручка дня D» перестала бы отвечать покупкам
|
||||
дня D — сломалась бы та самая сверка, ради которой всё строится.
|
||||
«дыхание» статусов это уже требовало. Отклонено: *сдвиг `created_at`* —
|
||||
подделка аудита источника: день создания строки разошёлся бы с днём покупки,
|
||||
чьё равенство держит синхронная модель (раздел 1), заказ уехал бы в чужую
|
||||
партицию, и «выручка дня D» перестала бы отвечать покупкам дня D — сломалась
|
||||
бы та самая сверка, ради которой всё строится.
|
||||
|
||||
**Пересечения.** Броски независимы, пересечения выходят арифметикой, приоритет
|
||||
мастер-спеки работает по-настоящему. Исключений два, и оба названы выше: дубль
|
||||
@@ -473,8 +475,10 @@ Kafka не задаёт границы полного слепка, поэтом
|
||||
|
||||
Стенд получает два режима приёма рядом — поток против слепка, push против
|
||||
pull, — и это опорная точка раздела 12 мастер-спеки. Тот же даг проигрывает
|
||||
модельный день и забирает слепок; со сдвигом отправки он переливает слепок
|
||||
предыдущего дня — ровно тот, который сам и положил в топик.
|
||||
модельный день и забирает слепок; в штатном прогоне это слепок предыдущего
|
||||
дня, который он сам и положил в топик. После падения между отправкой и
|
||||
забором в топике может ждать и хвост прежних слепков — забор принимает всё
|
||||
приехавшее, версии в ODS это поглощают (спека приёма).
|
||||
|
||||
## 10. Правила кода этапа 3
|
||||
|
||||
|
||||
Reference in New Issue
Block a user