Skip to content

CDC & reporting

Outbox → Kafka → reporting_proj — compliance projections off the write path.

Flow

Primary (write)  →  outbox  →  Kafka  →  ProjectionConsumer  →  reporting_proj

/api/reporting/* reads projection tables only — never contract, contract_version, or ledger_entry.

Prove it

./backend/limen-server/scripts/prove-cdc.sh
curl -s http://localhost:8080/api/reporting/reconciliation | jq .

Backfill after bulk seed

curl -s -X POST http://localhost:8080/api/reporting/projection/backfill | jq .

Full runbook: Dev validation