Implement ActionLoggingMiddleware with timing metrics #109

Open
opened 2026-03-15 04:13:17 +00:00 by freemo · 0 comments
Owner

Metadata

  • Commit Message: feat(dispatch): add action logging middleware
  • Branch: feature/m1-middleware-pipeline

Background and Context

ActionLoggingMiddleware (after_action, priority 800) logs each executed action with
timing information for performance monitoring and debugging.

Expected Behavior

  • Records wall-clock time before and after action execution
  • Logs action class, player name, arguments, and elapsed time
  • Log level is configurable (default: Logger::Medium)

Acceptance Criteria

  • ActionLoggingMiddleware at after_action priority 800
  • Timing measurement with millisecond precision
  • Configurable log level
  • BDD scenarios

Subtasks

  • Implement ActionLoggingMiddleware
  • Add timing measurement
  • Write Cucumber scenarios

Definition of Done

This issue is complete when:

  • All subtasks above are completed and checked off.
  • A Git commit is created where the first line of the commit message matches the
    Commit Message in Metadata exactly.
  • The commit is pushed to the remote on the branch matching the Branch in Metadata.
  • The commit is submitted as a pull request to master, reviewed, and merged.
## Metadata - **Commit Message**: `feat(dispatch): add action logging middleware` - **Branch**: `feature/m1-middleware-pipeline` ## Background and Context ActionLoggingMiddleware (after_action, priority 800) logs each executed action with timing information for performance monitoring and debugging. ## Expected Behavior - Records wall-clock time before and after action execution - Logs action class, player name, arguments, and elapsed time - Log level is configurable (default: Logger::Medium) ## Acceptance Criteria - ActionLoggingMiddleware at after_action priority 800 - Timing measurement with millisecond precision - Configurable log level - BDD scenarios ## Subtasks - [ ] Implement ActionLoggingMiddleware - [ ] Add timing measurement - [ ] Write Cucumber scenarios ## Definition of Done This issue is complete when: - All subtasks above are completed and checked off. - A Git commit is created where the **first line** of the commit message matches the Commit Message in Metadata exactly. - The commit is pushed to the remote on the branch matching the **Branch** in Metadata. - The commit is submitted as a **pull request** to `master`, reviewed, and **merged**.
freemo added this to the (deleted) milestone 2026-03-15 04:13:17 +00:00
freemo self-assigned this 2026-03-15 04:25:24 +00:00
freemo modified the milestone from (deleted) to v1.0.0 2026-03-16 00:28:04 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference: aethyr/Aethyr#109
No description provided.