Search docs

Docs search

Event Architecture

Review implemented validation rules for unhandled events, circular event chains, synchronous event misuse, and naming inconsistency.

Why it matters

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 IDRule titleCategorySeverityShort explanationExample violationRemediation guidanceRule detail
AP-EVT-001Published event has no handlerEvent ArchitecturewarningFlags 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-002Circular event chain riskEvent ArchitecturewarningFlags 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-003Synchronous dependency disguised as eventEvent ArchitecturewarningFlags 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-004Event naming inconsistencyEvent ArchitecturewarningFlags 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
Event Architecture | ArchPilot Docs