Skip to main content

Asset Service Commands

Command inventory

GroupOperationsEvents / integration
InventoryCreate, update descriptive details, make available, deleteCreate/update/available have no lifecycle integration event; all record local evidence; delete is status-limited.
Request/approvalCreate request, reject, apply workflow decisionRequested, Rejected, or Assigned event; optional workflow HTTP start/verification.
CustodyAssign/issue, returnAssigned or Returned event.
Incident/end-of-lifeMark damaged, mark lost, retireLostOrDamaged or Retired event.
DocumentsUpload, list-adjacent command service, download, remove referenceSynchronous Document Service; audit/timeline for mutation; no lifecycle event.
CompatibilitySave create/update, request, status mapping, deleteDelegates to canonical commands after shape/status conversion.

Each mutation loads or creates the aggregate, applies application/domain validation, records evidence, and saves through IUnitOfWork. Domain validation becomes an invalid result; missing records become not found; state/duplicate/managed-workflow conflicts become conflicts. Workflow start occurs after initial request persistence, so it is not atomic with the remote workflow call. Document storage occurs before the local reference save and has no distributed transaction.

Requires confirmation

Production ownership, authorization governance, operational policy, and future architecture require confirmation where the source does not enforce them.

Source References

  • microservices/src/asset-service/Application/Commands/AssetCommands.cs
  • microservices/src/asset-service/Application/Commands/DocumentCommands.cs
  • microservices/src/asset-service/Application/Compatibility/AssetCompatService.cs