Asset Lifecycle Events
Summary
The condition and terminal family: AssetLostOrDamaged for loss and damage, and AssetRetired for retirement from service.
Audience
Engineering, integration, QA, architecture, security, and product reviewers.
Reference Content
Events
| Event | Aggregate transition(s) | Distinguisher | Notification template |
|---|---|---|---|
AssetLostOrDamaged | MarkDamaged, MarkLost | Status and Condition in the payload | Asset.LostOrDamaged |
AssetRetired | Retire | Terminal status | Asset.Retired |
AssetLostOrDamaged
Both the damaged transition (Condition = Damaged) and the lost transition (Condition = Lost) raise the single AssetLostOrDamagedDomainEvent. The specific outcome is not a separate event type; consumers read Status and Condition from the uniform payload to distinguish loss from damage. The holder captured is the holder at the time of the event.
AssetRetired
Raised by Asset.Retire when an asset is retired from service. Retirement is a terminal lifecycle state; the payload carries Status = Retired. If the asset is unassigned at retirement, the Notification consumer routes the message to the AssetAdmin role rather than to a holder.
Public-safety note
Actual asset identifiers, serials, and condition notes are intentionally excluded.
Source References
microservices/src/asset-service/Domain/Asset/Asset.csmicroservices/src/asset-service/Domain/Asset/AssetDomainEvents.csmicroservices/src/contracts/Events/AssetLifecycleEvents.cs
Related Articles
See Also
Keywords
- AssetLostOrDamaged
- AssetRetired
- Terminal lifecycle
Revision Information
- Status: Draft
- Last reviewed: 2026-07-17
- Review cycle: Quarterly