Asset Status and Transition Reference
Summary
This page catalogs the ten asset statuses, the transitions the aggregate permits, the event each transition emits, and the clearance implications of each status. The transition guards live in the aggregate, so illegal transitions are rejected at the domain layer rather than the API.
Audience
Developers and QA engineers verifying lifecycle behavior, support engineers interpreting an asset's current state, and solution architects reasoning about clearance blocking.
Reference Content
Status catalog
| Status | Meaning | Clearance impact |
|---|---|---|
| Available | Not assigned; assignable. | Non-blocking |
| Requested | A request has been raised. | Non-blocking |
| Approved | Request approved (compatibility path may go straight to Issued). | Non-blocking |
| Issued | Currently assigned to a person. | Blocking |
| Rejected | Request declined. | Non-blocking |
| Returned | Handed back from Issued; does not auto-return to Available. | Non-blocking |
| Damaged | Marked damaged (condition Damaged). | Blocking |
| Lost | Marked lost (condition Lost). | Blocking |
| Repair | Under repair. | Blocking |
| Retired | End of life; terminal. | Non-blocking |
Clearance endpoints treat Issued, Damaged, Lost, and Repair as open/blocking; the remaining statuses do not block.
Transition matrix
| Transition | From | To | Event |
|---|---|---|---|
| CreateRequest | (new) | Requested | AssetRequested |
| Assign | assignable state | Issued | AssetAssigned |
| Return | Issued | Returned | AssetReturned |
| Reject | Requested | Rejected | AssetRejected |
| MarkDamaged | (applicable) | Damaged | AssetLostOrDamaged |
| MarkLost | (applicable) | Lost | AssetLostOrDamaged |
| Retire | (applicable) | Retired (terminal) | AssetRetired |
| Compatibility approve | Requested | Issued | AssetAssigned |
| Compatibility reject | Requested | Rejected | AssetRejected |
Return is permitted only from Issued, and Reject only from Requested. CompatId may be 0 at create time. Returned does not auto-transition to Available.
Lifecycle diagram
Source References
microservices/src/asset-service/Domain/Common/Enums.csmicroservices/src/asset-service/Domain/Asset/Asset.csmicroservices/src/asset-service/Domain/Asset/AssetDomainEvents.cs
Related Articles
See Also
Keywords
asset status, transitions, lifecycle, clearance blocking, transition matrix
Revision Information
- Status: Draft
- Last reviewed: 2026-07-17
- Review cycle: Quarterly