Events
Two independent event mechanisms exist, and they are not the same bus.
Outbound cross-service events (real event bus)
Published on the platform event bus. Each event is a plain object whose discriminator is a type field. Publishing is enabled outside the test stage and is replaced with a no-op in in-memory mode. Confirmed publishers:
type |
Trigger |
|---|---|
instanceCreated |
Instance created successfully. |
instanceCreationFailed |
Instance creation threw. |
instanceUpdated |
Instance updated. |
instancePropertiesUpdated |
Instance properties patched. |
instanceDeleted |
Instance deleted. |
serviceRegistryCreated |
Service registry entry created. Companion events cover the full lifecycle: serviceRegistryCreationFailed, serviceRegistryUpdated, serviceRegistryDeleted, and serviceRegistryDeactivated. |
cartMergeCompleted |
After processing an inbound cart-merge event. |
All publishers are fire-and-forget: failures are logged and never fail the originating request.
Consumed events (inbound)
Routed by detail-type for event-bus and batched deliveries:
| Detail-type / match | Source | Handling | Gating |
|---|---|---|---|
app.* (any) |
Marketplace Service | Marketplace app lifecycle handler (accepts the app. prefix). |
— |
cartMerge |
User Service | Orchestrated guest-to-registered merge, then publishes cartMergeCompleted. |
Skipped if user merge is disabled, if the merge is not successful, if user IDs are missing, or if guest equals registered. |
In-process cart-action events — defined but not published to the bus
The platform defines a domain event name for each cart action (cart.items.added, cart.item.quantity.updated, cart.items.deleted, cart.shipping.updated, cart.payment.updated, cart.items.addresses.updated, cart.promotion.applied, cart.viewed, cart.order.reviewed, cart.order.placed, cart.deleted, cart.payment.deleted, cart.merged, cart.virtual.calculated, cart.virtual.order.placed).
However, these are dispatched to an in-process publisher whose registered handlers (logging, analytics, abandonment, inventory) are currently empty stubs; the computed event name is used only for logging. Net effect: cart-action domain events are NOT emitted to the cross-service bus — treat them as an internal/extension hook, not a public event contract. The only real outbound events are the instance, service-registry, and cart-merge-completed events above.
Revision History
2026-08-05 | AN – Page created and uploaded the contents