Phase 3 — Architecture & Engineering

Event Catalog

Every event your spaces exchange, typed and contracted before anyone builds a listener

2 min read · Document 14 of 30

What is this document?

The Event Catalog lists every event: who emits it, who listens, the payload schema, delivery timing and what happens when delivery fails.

Emitters and listeners are built against the same contract, so events never arrive in a shape nobody can parse.

Why does it matter?

  • When event schemas are invented on both sides, bugs are silent at emit time and catastrophic at runtime.
  • Retry and dead-letter rules are decided once.
  • Timing targets make slow integrations visible.

What's inside?

  • Events — Name, emitter, listeners and payload.
  • Delivery guarantees — Ordering, retries, idempotency.
  • Failure handling — Dead letters, alerts and replays.
An event from emitter to every listener

How CREAH generates it

CREAH builds this document from your Stage 0 answers and interview. Questions that shape it include:

  • Which actions must notify another space?
  • How quickly must they be notified?
  • What happens if a listener is down?

Example excerpt

## Event: order.placed
Emitter:   Customer Space → Core API
Listeners: Restaurant Portal, Operations Portal
Payload:   { order_id: uuid, customer_id: uuid, items: OrderItem[] }
SLA:       listeners receive within 2,000ms
Failure:   retry 3× with exponential backoff → dead letter queue

Ready to generate your Event Catalog?