Event Lab
Understand publisher-listener decoupling through a visible event timeline.
This page helps you observe what usually stays hidden: the request can finish quickly while listeners keep
reacting in the background. Publish multiple event types and then inspect the shared event history.
Event Story
What to watch for
Controller Receives the publish request.
Publisher Builds a `UserEvent` and emits it.
Listeners Track history and optional async work.
History API Lets you inspect what actually happened.
Experiment 1
Publish LOGIN twice with different users and confirm the history list grows without changing controller code.
Experiment 2
Publish CREATED and then refresh history to see the same endpoint support multiple listener paths.
Code pairing tip
Read `UserEventPublisher` and `UserEventListener` side by side to see the decoupling boundary.
Live Event Console
Publish events and inspect history
Use the form to publish events, then reload history to inspect type, user, detail, and timestamp.
Event type
LOGIN
CREATED
UPDATED
DELETED
User id
User name
Publish event
Load history
Load event notes
Interpretation hint
If the controller returns immediately but history keeps growing, you are seeing decoupled follow-up behavior in action.
Publish an event or load history to inspect live output.