Epic: Centralize ES Command Emission #159
Labels
No labels
Blocked
Duplicate
MoSCoW/Could Have
MoSCoW/Must Have
MoSCoW/Should Have
Points/1
Points/13
Points/2
Points/21
Points/3
Points/5
Points/8
Priority/Backlog
Priority/Critical
Priority/High
Priority/Low
Priority/Medium
State/Completed
State/In progress
State/In review
State/Paused
State/Unverified
State/Verified
State/Wont Do
Type/Bug
Type/Epic
Type/Feature
Type/Legendary
Type/Task
Type/Testing
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Reference: aethyr/Aethyr#159
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Background and Context
ES commands are currently emitted inline in 8+ methods across
Manager,GameObject, andStorageMachine, each with duplicated guard-check-rescue boilerplate. Some methods in both Manager and StorageMachine emit ES commands for the same operation, creating a double-emission risk. This Epic extracts all ES emission into a singleEventSourceServiceclass with unified configuration checking, retry logic, logging, and error handling.This is distinct from the
EventSourcingMiddleware(issue #110) which is a future ActionPipeline middleware. TheEventSourceServiceis a standalone service that can be used now and later wrapped as middleware when the pipeline is ready.Demonstrable Outcome
All ES command emission flows through
EventSourceService. No inlineSequent.command_service.execute_commandscalls remain. Double-emission is prevented.Acceptance Criteria
EventSourceServiceclass handles all ES emissiones_write_mode)