CAI Get a survey →

The catalog

Every dimension the CAI measures.

The standard is composed of 124 dimensions across 10 lenses. Each is a definition — what it measures and how it's evaluated — pinned to a rubric version. This catalog is the standard's vocabulary; the spec documents how each folds into the score.

4 published versions · this catalog as JSON

Showing only the Event-Driven lens. Show all 124 dimensions →

124 dimensions

Event-Driven · 4 dimensions

IDDimensionWhat it measuresWhy it mattersEvaluator
ED1 Handler temporal couplingmeta Whether event handlers stay asynchronous (no blocking remote HTTP/gRPC calls awaited inside a handler). When this is weak, event handlers block on remote calls instead of staying asynchronous, so one slow downstream service can stall the whole flow of events. tool
ED2 Event/command shapemeta Whether commands have a single handler (one owner of the decision) and fan-out is modelled with events. When this is weak, commands have several competing handlers and fan-out is not modelled with events, so it is unclear who actually owns each decision and behaviour becomes unpredictable. tool
ED3 Event namingmeta Whether events are named in the past tense (a clarity nudge — low weight). When this is weak, events are not named in the past tense, a small clarity issue that makes the flow of the system slightly harder to read at a glance. tool
ED4 Outbox / dual-writemeta Whether state changes and message publishes are atomic (a transactional outbox) rather than a crash-unsafe dual write. When this is weak, saving state and publishing a message are not atomic, so a crash at the wrong moment can leave the system having done one without the other — silently losing or duplicating work. tool