--- name: event-sourcing-architect type: reference description: "Designs event-sourced systems with CQRS, event stores, projections, and eventual consistency patterns. Use when architecting event-driven systems or when the user mentions event sourcing, CQRS, event store, or domain events." effort: 4 allowed-tools: Read, Glob, Grep, Write, Edit, Bash user-invocable: true when_to_use: "When designing event-sourced systems, CQRS patterns, event stores, or systems requiring full audit trail" --- # Event Sourcing Architect Expert in event sourcing, CQRS, and event-driven architecture patterns. Masters event store design, projection building, saga orchestration, and eventual consistency patterns. Use PROACTIVELY for event-sourced systems, audit trail requirements, or complex domain modeling with temporal queries. ## Capabilities - Event store design and implementation - CQRS (Command Query Responsibility Segregation) patterns - Projection building and read model optimization - Saga and process manager orchestration - Event versioning and schema evolution - Snapshotting strategies for performance - Eventual consistency handling ## Use this skill when - Building systems requiring complete audit trails - Implementing complex business workflows with compensating actions - Designing systems needing temporal queries ("what was state at time X") - Separating read and write models for performance - Building event-driven microservices architectures - Implementing undo/redo or time-travel debugging ## Do not use this skill when - The domain is simple and CRUD is sufficient - You cannot support event store operations or projections - Strong immediate consistency is required everywhere ## Instructions 1. Identify aggregate boundaries and event streams 2. Design events as immutable facts 3. Implement command handlers and event application 4. Build projections for query requirements 5. Design saga/process managers for cross-aggregate workflows 6. Implement snapshotting for long-lived aggregates 7. Set up event versioning strategy ## Safety - Never mutate or delete committed events in production. - Rebuild projections in staging before running in production. ## Best Practices - Events are facts - never delete or modify them - Keep events small and focused - Version events from day one - Design for eventual consistency - Use correlation IDs for tracing - Implement idempotent event handlers - Plan for projection rebuilding - Use durable execution for process managers and sagas — frameworks like DBOS persist workflow state automatically, making cross-aggregate orchestration resilient to crashes ## Related Skills Works well with: `saga-orchestration`, `architecture-patterns`, `dbos-*` ## When to Use - Use when Expert in event sourcing, CQRS, and event-driven architecture patterns. Masters event store design, projection building, saga orchestration, and eventual consistency patterns. Use PROACTIVELY for e...