From 7e5e05ed4735facc7a7f57b149954b5f23a10010 Mon Sep 17 00:00:00 2001 From: Dmitry Dementiev Date: Sun, 16 Aug 2026 22:31:24 +0300 Subject: [PATCH] =?UTF-8?q?docs(orders):=20=D0=BD=D0=B0=D0=B7=D0=B2=D0=B0?= =?UTF-8?q?=D0=BD=20=D0=BF=D0=BE=D1=80=D1=8F=D0=B4=D0=BE=D0=BA=20=D1=81?= =?UTF-8?q?=D1=82=D1=80=D0=BE=D0=BA=20=D0=B2=D0=BD=D1=83=D1=82=D1=80=D0=B8?= =?UTF-8?q?=20=D1=81=D0=BB=D0=B5=D0=BF=D0=BA=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Зачем: хеш байтов слепка в описи не определён без порядка записей — шов резолюции #72 к #81, который #81 закрыл только для ключей. Что: одна строка в §8 — порядок строк равен порядку рождения заказов (возрастание order_id); детерминизм даёт его без новой механики. Проверка: чтение; вычитание — #84. Co-Authored-By: Claude Fable 5 --- docs/specs/2026-08-16-orders.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/specs/2026-08-16-orders.md b/docs/specs/2026-08-16-orders.md index 524c707..3270735 100644 --- a/docs/specs/2026-08-16-orders.md +++ b/docs/specs/2026-08-16-orders.md @@ -429,7 +429,9 @@ d…d+δ−1 её нет, а с d+δ она появляется в том со исходящей границе суток; одна на всю выгрузку, не глобальная константа и не дата отправки. Константы мира — D0, пояс модельного календаря и окно K = 7. - **Порядок ключей** — порядок полей контракта; у позиции — `sku`, `qty`, - `price`: воспроизводимые байты без сортировки ключей. + `price`: воспроизводимые байты без сортировки ключей. Порядок строк внутри + слепка — порядок рождения заказов, он же возрастание `order_id`: детерминизм + даёт его даром, а хешу слепка в описи нужен именно названный порядок. - **Сериализация** — явная функция рядом с `events(...)` в существующем `serialize.py`: один словарь с вложенным списком и один `orjson.dumps` на запись. Классы кодеков, реестр схем и отдельный `dumps` для `items` не