Добавить ods.event_v как каноническую точку точного чтения актуальных событий. Представление сохраняет зерно события, имена и типы source-aligned полей ODS, но скрывает от потребителя FINAL или эквивалентное схлопывание версий.
Учебный результат: менти видит границу между физическими версиями ReplacingMergeTree и стабильным чтением текущего состояния.
Критерии приёмки
ods.event_v создано как обычное представление (_v) и возвращает те же source-aligned поля на том же зерне события, что ods.event_rep / ods.event_dist.
Через ods.event_v видна ровно актуальная версия каждого события независимо от фоновых слияний; потребителю не нужно писать FINAL.
Проверка стартового мира, которой нужен актуальный счёт, читает ods.event_v; ожидание доставки и другие проверки физических строк остаются на ods.event_dist.
docs/architecture/storage.md и мастер-спека различают ods.event_v (актуальное состояние ODS) и будущий dds.event_v (бизнес-представление).
Границы
Не менять ods.event_rep и ods.event_dist, их движки, ключи, поля и зерно.
Не переименовывать поля в snake_case, не расшифровывать коды и не добавлять бизнес-модель; dds.event_v вне задачи.
Не переводить на представление проверки доставки, которым нужны физически поступившие строки.
Не заводить общий слой представлений или отдельный постоянный контур проверок ради одного объекта.
Кому что
Целиком Кодекс: постановка самодостаточна, критерии перечислены. Линию уместности на ревью держит Opus. Бриф Кодексу обязан требовать: проверять свойство, а не текст вывода грепом; только POSIX-инструменты (ripgrep на машине стенда нет); вердикт «недостижимо» перепроверять на достижимость, а не на факт.
Сначала прочитать
docs/adr/0005-event-ingestion.md;
docs/adr/0006-object-naming.md;
docs/architecture/storage.md, разделы «Имена объектов» и «Приём событий»;
docs/architecture/testing.md, раздел об интеграционной проверке.
Проверка
make config-test
make check-clickhouse на чисто поднятом стенде
Отдельную постоянную цель не добавлять: существующая сверка стартового мира должна доказать точный актуальный счёт через новое представление.
Part of #5.
## Цель
Добавить `ods.event_v` как каноническую точку точного чтения актуальных событий. Представление сохраняет зерно события, имена и типы source-aligned полей ODS, но скрывает от потребителя `FINAL` или эквивалентное схлопывание версий.
Учебный результат: менти видит границу между физическими версиями `ReplacingMergeTree` и стабильным чтением текущего состояния.
## Критерии приёмки
- [x] `ods.event_v` создано как обычное представление (`_v`) и возвращает те же source-aligned поля на том же зерне события, что `ods.event_rep` / `ods.event_dist`.
- [x] Через `ods.event_v` видна ровно актуальная версия каждого события независимо от фоновых слияний; потребителю не нужно писать `FINAL`.
- [x] Проверка стартового мира, которой нужен актуальный счёт, читает `ods.event_v`; ожидание доставки и другие проверки физических строк остаются на `ods.event_dist`.
- [x] `docs/architecture/storage.md` и мастер-спека различают `ods.event_v` (актуальное состояние ODS) и будущий `dds.event_v` (бизнес-представление).
## Границы
- Не менять `ods.event_rep` и `ods.event_dist`, их движки, ключи, поля и зерно.
- Не переименовывать поля в snake_case, не расшифровывать коды и не добавлять бизнес-модель; `dds.event_v` вне задачи.
- Не переводить на представление проверки доставки, которым нужны физически поступившие строки.
- Не заводить общий слой представлений или отдельный постоянный контур проверок ради одного объекта.
## Кому что
Целиком Кодекс: постановка самодостаточна, критерии перечислены. Линию уместности на ревью держит Opus. Бриф Кодексу обязан требовать: проверять свойство, а не текст вывода грепом; только POSIX-инструменты (ripgrep на машине стенда нет); вердикт «недостижимо» перепроверять на достижимость, а не на факт.
## Сначала прочитать
- `docs/adr/0005-event-ingestion.md`;
- `docs/adr/0006-object-naming.md`;
- `docs/architecture/storage.md`, разделы «Имена объектов» и «Приём событий»;
- резолюцию #80;
- `docs/architecture/testing.md`, раздел об интеграционной проверке.
## Проверка
- `make config-test`
- `make check-clickhouse` на чисто поднятом стенде
Отдельную постоянную цель не добавлять: существующая сверка стартового мира должна доказать точный актуальный счёт через новое представление.
Перевешен из детей карты #69 в чек-лист этапа #5 при нарезке (#89): чистое исполнение без открытых решений, событийный близнец #94 (ods.order_v). Порядок с #94 свободный.
Перевешен из детей карты #69 в чек-лист этапа #5 при нарезке (#89): чистое исполнение без открытых решений, событийный близнец #94 (`ods.order_v`). Порядок с #94 свободный.
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.
Part of #5.
Цель
Добавить
ods.event_vкак каноническую точку точного чтения актуальных событий. Представление сохраняет зерно события, имена и типы source-aligned полей ODS, но скрывает от потребителяFINALили эквивалентное схлопывание версий.Учебный результат: менти видит границу между физическими версиями
ReplacingMergeTreeи стабильным чтением текущего состояния.Критерии приёмки
ods.event_vсоздано как обычное представление (_v) и возвращает те же source-aligned поля на том же зерне события, чтоods.event_rep/ods.event_dist.ods.event_vвидна ровно актуальная версия каждого события независимо от фоновых слияний; потребителю не нужно писатьFINAL.ods.event_v; ожидание доставки и другие проверки физических строк остаются наods.event_dist.docs/architecture/storage.mdи мастер-спека различаютods.event_v(актуальное состояние ODS) и будущийdds.event_v(бизнес-представление).Границы
ods.event_repиods.event_dist, их движки, ключи, поля и зерно.dds.event_vвне задачи.Кому что
Целиком Кодекс: постановка самодостаточна, критерии перечислены. Линию уместности на ревью держит Opus. Бриф Кодексу обязан требовать: проверять свойство, а не текст вывода грепом; только POSIX-инструменты (ripgrep на машине стенда нет); вердикт «недостижимо» перепроверять на достижимость, а не на факт.
Сначала прочитать
docs/adr/0005-event-ingestion.md;docs/adr/0006-object-naming.md;docs/architecture/storage.md, разделы «Имена объектов» и «Приём событий»;docs/architecture/testing.md, раздел об интеграционной проверке.Проверка
make config-testmake check-clickhouseна чисто поднятом стендеОтдельную постоянную цель не добавлять: существующая сверка стартового мира должна доказать точный актуальный счёт через новое представление.
Перевешен из детей карты #69 в чек-лист этапа #5 при нарезке (#89): чистое исполнение без открытых решений, событийный близнец #94 (
ods.order_v). Порядок с #94 свободный.