Добавить 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 вне задачи.
Не переводить на представление проверки доставки, которым нужны физически поступившие строки.
Не заводить общий слой представлений или отдельный постоянный контур проверок ради одного объекта.
Сначала прочитать
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 #69.
## Цель
Добавить `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` вне задачи.
- Не переводить на представление проверки доставки, которым нужны физически поступившие строки.
- Не заводить общий слой представлений или отдельный постоянный контур проверок ради одного объекта.
## Сначала прочитать
- `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` на чисто поднятом стенде
Отдельную постоянную цель не добавлять: существующая сверка стартового мира должна доказать точный актуальный счёт через новое представление.
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 #69.
Цель
Добавить
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вне задачи.Сначала прочитать
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на чисто поднятом стендеОтдельную постоянную цель не добавлять: существующая сверка стартового мира должна доказать точный актуальный счёт через новое представление.