Skip to main content

Asset Recovery and Rollback

Summary

This page lists only the recovery and rollback mechanisms verified in source and states plainly where no procedure exists. Verified mechanisms include request-level failure returns with no partial commit, unbounded outbox retry, workflow retry via re-poll of failed rows, feature-flag rollback, and the presence of EF migration Down methods. There is no document compensation, no distributed transaction, and no automated reconciliation. Where no procedure exists, it is Requires confirmation; no runbook is invented here.

Audience

  • DevOps engineers responding to incidents.
  • Support and QA engineers understanding recovery limits.
  • Solution architects assessing resilience.

Reference Content

Verified mechanisms

MechanismBehavior
Request-level failure returnSingle local transaction — aggregate, audit, timeline, and outbox commit together or not at all; no partial commit
Outbox retryUnbounded re-poll of Pending/Failed rows (no ceiling, no backoff)
Workflow retryFailed workflow interactions are retried via re-poll of failed rows
Feature-flag rollbackWorkflow flag and gateway asset-routing flag can be flipped OFF
EF migration Down methodsRollback methods are present in the migration
Gateway cutover rollbackFlip the asset-routing flag OFF to return traffic to the monolith

Rollback decision flow

Gaps and unverified areas

  • Tested-rollback evidence for migrations was not found — Down methods exist but a verified rollback procedure is Requires confirmation.
  • No document compensation exists for cross-service document inconsistencies.
  • No distributed transaction spans asset-service and its collaborators.
  • No automated reconciliation exists for outbox, workflow, or document state.

Where no procedure exists, it is classified Requires confirmation; this page does not invent recovery runbooks.

Source References

  • microservices/src/asset-service/Infrastructure/Persistence.cs
  • microservices/src/asset-service/Messaging/OutboxRelayHostedService.cs
  • microservices/src/gateway-api/Program.cs

See Also

Keywords

asset recovery, rollback, feature flag, unbounded retry, requires confirmation

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-17
  • Review cycle: Quarterly