Search docs
Docs searchValidation category
Event Architecture
Review implemented validation rules for unhandled events, circular event chains, synchronous event misuse, and naming inconsistency.
Event Architecture findings help teams keep asynchronous boundaries intentional, handled, and understandable.
Overview
Review implemented validation rules for unhandled events, circular event chains, synchronous event misuse, and naming inconsistency.
Event Architecture findings help teams keep asynchronous boundaries intentional, handled, and understandable.
Why it matters
Cloud uses this guidance to help teams interpret local validation findings in organization context without turning the docs into implementation notes.
When this domain drifts, findings become harder to triage, ownership becomes less clear, and architecture review depends too much on individual memory.
Good architectural practices
- Published events with matching handlers.
- Event chains without circular processing risk.
- Events used for decoupling rather than hidden synchronous calls.
Common anti-patterns
- Published event has no handler
- Circular event chain risk
- Synchronous dependency disguised as event
- Event naming inconsistency
Relationship to other architecture areas
This domain usually overlaps with neighboring validation categories. Use the related pages below to understand the adjacent architecture concerns before changing policy, suppressing a finding, or accepting risk.
Implemented rules
These are the currently implemented rules in this category. Use this table for category-level orientation, then open the Rule Catalog when you need rule-specific examples and remediation guidance.
| Rule ID | Rule title | Category | Severity | Short explanation | Example violation | Remediation guidance | Rule detail |
|---|---|---|---|---|---|---|---|
| AP-EVT-001 | Published event has no handler | Event Architecture | warning | Flags events that appear to be published without any subscribed handler. | RepositoryUploadedEvent is published, but no handler is registered. | Add or restore the expected handler. Remove the event if it is obsolete. Align event names between publisher, contract, and handler registration. | View rule page |
| AP-EVT-002 | Circular event chain risk | Event Architecture | warning | Flags event chains that may loop back to their starting workflow. | PolicyUpdated triggers RepositoryRevalidated, which triggers PolicyUpdated again. | Break the cycle with a clearer event boundary. Add idempotency and correlation guards. Document intentional event choreography. | View rule page |
| AP-EVT-003 | Synchronous dependency disguised as event | Event Architecture | warning | Flags events used like immediate synchronous calls between modules. | Checkout publishes PriceCalculatedEvent and waits for the handler to return the price. | Use an explicit service boundary for synchronous dependencies. Use events for post-commit or eventually consistent work. Document expected consistency and failure handling. | View rule page |
| AP-EVT-004 | Event naming inconsistency | Event Architecture | warning | Flags event names that do not follow the repository's event naming convention. | StartUpload, RepositoryUploadedEvent, and upload_finished all describe the same style of event. | Use the established event naming convention. Prefer past-tense fact names for domain events when that is the local pattern. Update publisher, handler, and contract names together. | View rule page |
Related pages
Next steps