# M11-L03 — Lab contract

**Build:** Write outbox row in same transaction; dedupe consumer by event ID.

**Pass:** Duplicate delivery produces one business effect.

**Failure injection:** Commit DB then publish directly can lose message.

**Review question:** Why is exactly-once end-to-end difficult?

Status: specification; only count as executable when source and tests are present and verified.
