Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[0.3.0] - 2025-07-27

Added

  • Comprehensive PubSub Architecture: Implemented 10 dedicated PubSub instances for different event types:

    • :ex_esdb_events - Core business events and domain data
    • :ex_esdb_system - General system-level events
    • :ex_esdb_logging - Log aggregation and distribution
    • :ex_esdb_health - Health monitoring and status events
    • :ex_esdb_metrics - Performance metrics and statistics
    • :ex_esdb_security - Security events and threat detection
    • :ex_esdb_audit - Audit trail for compliance
    • :ex_esdb_alerts - Critical system alerts
    • :ex_esdb_diagnostics - Deep diagnostic information
    • :ex_esdb_lifecycle - Process lifecycle events
  • PubSub Architecture Documentation: Added comprehensive documentation (PUBSUB_ARCHITECTURE.md) covering:

    • Architecture benefits and design rationale
    • Detailed description of each PubSub instance
    • Consumer patterns and usage examples
    • Best practices and implementation guidelines
    • Monitoring and observability recommendations
  • Comprehensive Test Suite: Added extensive tests for PubSub system including:

    • Instance availability and uniqueness verification
    • Message isolation between instances and topics
    • Concurrent message handling capabilities
    • Real-world usage pattern validation
    • Error handling and resilience testing
    • Performance characteristics validation

Changed

  • Enhanced Separation of Concerns: Migrated from single PubSub instance to specialized instances for better:
    • Event isolation and fault tolerance
    • Independent scaling and configuration
    • Selective subscription capabilities
    • Improved observability and monitoring

Technical Details

  • Updated ExESDBGater.PubSubSystem to manage all 10 PubSub instances
  • Enhanced test coverage with 22 comprehensive test cases
  • Added documentation integration to mix.exs for generated docs
  • Maintained backward compatibility with existing PubSub usage

[Previous Versions]

Previous changelog entries would go here