Asset Event Summary
Summary
The asset-service raises six domain events, each mapped to one integration contract, all carrying a single uniform payload type. Events are published through a transactional outbox with a hosted relay. Delivery is at-least-once with no ordering guarantee. This page summarizes the model; the authoritative event details live in the verified event catalog.
Audience
Developers building consumers, QA engineers validating event flow, and solution architects reasoning about delivery semantics.
Reference Content
Events and contracts
| Domain event | Integration contract | Emitting transition |
|---|---|---|
| Requested | AssetRequested | CreateRequest |
| Assigned | AssetAssigned | Assign / compat approve |
| Returned | AssetReturned | Return |
| Rejected | AssetRejected | Reject / compat reject |
| LostOrDamaged | AssetLostOrDamaged | MarkDamaged / MarkLost |
| Retired | AssetRetired | Retire |
Payload and versioning
- One shared payload type (AssetLifecycleData / uniform Asset* payload).
- SchemaVersion 1.
Delivery model
| Aspect | Behavior |
|---|---|
| Mechanism | Transactional outbox + hosted relay. |
| Relay cadence | 10-second poll, batch of 50. |
| Delivery guarantee | At-least-once. |
| Ordering | No ordering guarantee. |
| Retry | Unbounded retry. |
| Dead-letter / cleanup | None. |
Consumers
One confirmed downstream consumer: notification-service, with six Asset.* templates. The inbound consumer within the asset-service itself remains foundational and is not implemented.
Source References
microservices/src/asset-service/Domain/Asset/AssetDomainEvents.csmicroservices/src/contracts/Events/AssetLifecycleEvents.csmicroservices/src/asset-service/Infrastructure/AssetDbContext.cs
Related Articles
See Also
Keywords
asset events, outbox, delivery model, at-least-once, notification consumer
Revision Information
- Status: Draft
- Last reviewed: 2026-07-17
- Review cycle: Quarterly