Asset Workflow Operations
Summary
This page describes how the asset-service integrates with the workflow-service for asset approvals. The integration is feature-flagged and OFF by default. When ON, the service registers a typed workflow HTTP client (10s timeout) and propagates tenant headers on outbound calls; an inbound callback endpoint drives asset transitions idempotently. When OFF, a null client is used and no outbound calls occur. Failures surface as non-started or failed results and never crash the request.
Audience
- DevOps engineers enabling or disabling workflow integration.
- Support and QA engineers investigating approval flows.
- Solution architects assessing cross-service coupling.
Reference Content
Feature-flag gate
The asset-approval workflow flag defaults OFF. At startup the flag decides the client binding:
| Flag state | Binding | Behavior |
|---|---|---|
| ON | IWorkflowClient → WorkflowServiceClient (10s timeout) | Outbound HTTP to workflow-service with tenant headers propagated |
| OFF | IWorkflowClient → NullWorkflowClient | No outbound calls |
Callback-driven transitions
When workflow is engaged, an inbound HTTP workflow callback endpoint drives asset state transitions. The callback is idempotent (per prior epics), so repeated deliveries do not double-apply a transition.
Failure handling
Outbound workflow calls that fail surface as non-started or failed results to the caller; they do not crash the request or leave the aggregate partially committed. This isolates asset request handling from workflow-service availability.
Boundaries (Requires confirmation)
- Reconciliation of asset state against workflow state: not established in source.
- Callback-trust and authentication governance for inbound callbacks: not established in source.
These are classified Requires confirmation. Rollback of the integration is by flipping the flag OFF (see recovery and rollback).
Source References
microservices/src/asset-service/Infrastructure/WorkflowServiceClient.csmicroservices/src/asset-service/Program.csmicroservices/src/asset-service/Api/AssetEndpoints.cs
Related Articles
See Also
Keywords
asset workflow, approval integration, feature flag, idempotent callback, null client
Revision Information
- Status: Draft
- Last reviewed: 2026-07-17
- Review cycle: Quarterly