AGENTS.md — events/

Назначение этого уровня

Схемы событий, публикуемых в Kafka. Источник истины по формату сообщений.

Содержимое

events/
├── AGENTS.md                         # ← вы здесь
├── README.md                         # обзор
├── topics.md                         # каталог топиков
├── raw.supplier.etm.payload.v1.json
├── offer.normalized.v1.json
├── offer.price_changed.v1.json
├── offer.stock_changed.v1.json
├── canonical.events.v1.json          # union type: все события canonical
├── canonical.snapshots.v1.json
├── matching.decided.v1.json
└── moderation.requested.v1.json

Правила

  • Формат: JSON Schema Draft 2020-12 (или Avro .avsc для Schema Registry).
  • Имя топика = имя схемы без расширения.
  • Версия в имени обязательна.
  • Breaking change = новый топик .vN+1.
  • Все события имеют стандартный envelope.

Envelope

Все события оборачиваются в стандартный envelope:

{
  "event_id": "uuid",
  "event_type": "CanonicalCreated | OfferPriceChanged | ...",
  "aggregate_type": "canonical_product | supplier_offer | ...",
  "aggregate_id": "uuid-or-key",
  "version": 42,
  "occurred_at": "ISO-8601",
  "schema_version": 1,
  "metadata": { ... },
  "payload": { ... }
}

Связано