Skip to content

refactor: hexagonal architecture remediation — eventsourcing @ComponentScan and @Import removal#9

Merged
casc84ab merged 1 commit into
developfrom
feature/hexagonal-architecture-remediation
Feb 13, 2026
Merged

refactor: hexagonal architecture remediation — eventsourcing @ComponentScan and @Import removal#9
casc84ab merged 1 commit into
developfrom
feature/hexagonal-architecture-remediation

Conversation

@ancongui

Copy link
Copy Markdown
Contributor

Summary

  • Removed @ComponentScan from EventSourcingAutoConfiguration (including exclude filters)
  • Added 6 explicit @Bean @ConditionalOnMissingBean methods: EventStoreMetrics, EventTypeRegistry, EventSourcingTransactionalAspect, EventUpcastingService, EventOutboxService, EventOutboxProcessor
  • Removed @Component/@Service from 6 classes (kept @Aspect on EventSourcingTransactionalAspect)
  • Removed @Import({EventStoreAutoConfiguration, SnapshotAutoConfiguration, EventSourcingHealthConfiguration, EventSourcingMetricsConfiguration, R2dbcConfig, R2dbcTransactionConfig}) — this bypassed conditional guards
  • Added 4 configuration classes to .imports file (R2dbc configs already registered in their own module)

Test Plan

  • Module compiles successfully
  • Verify all event sourcing beans created via auto-configuration
  • Verify EventStoreAutoConfiguration and SnapshotAutoConfiguration load independently via .imports
  • Verify R2dbc configuration loads from fireflyframework-r2dbc module

…ntscan and @import removal

Part of the Firefly Framework hexagonal architecture remediation.

- Remove @componentscan from EventSourcingAutoConfiguration
- Add 6 explicit @bean @ConditionalOnMissingBean methods
- Remove @Component/@service from 6 component classes
- Remove @import (bypasses conditional guards)
- Add EventStoreAutoConfiguration, SnapshotAutoConfiguration,
  EventSourcingHealthConfiguration, EventSourcingMetricsConfiguration
  to .imports file
@ancongui ancongui requested a review from casc84ab February 12, 2026 22:05

@casc84ab casc84ab left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM - 6 explicit @bean @ConditionalOnMissingBean methods replace @componentscan. @import removal is correct since .imports handles auto-configuration loading.

@casc84ab casc84ab merged commit 1ccc4b1 into develop Feb 13, 2026
4 checks passed
@casc84ab casc84ab deleted the feature/hexagonal-architecture-remediation branch February 13, 2026 09:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants