StepCompleted
A migration step has completed successfully.
This progress event is emitted AFTER a migration step's execute() method returns successfully with a result of CONTINUE or ABORT. It indicates that the step has finished its work without throwing an exception.
Note: Steps that return RERUN do not emit StepCompleted until they eventually return CONTINUE or ABORT on a subsequent execution.
Usage:
Use this event for logging step completions, updating detailed progress tracking, or performing cleanup actions after each step.
is MigrationProgress.StepCompleted -> {
logger.i("Completed step: ${progress.step.description}")
completedSteps.add(progress.step.description)
updateDetailedProgressLog("✓ ${progress.step.description}")
}Flow Behavior:
Emitted after successful step execution
NOT emitted for steps that return RERUN (until final success)
NOT emitted for steps that throw exceptions
Emitted before proceeding to the next step or completing migration
Parameters
The MigrationStep that has completed successfully