## validate_transition()


Validate lifecycle transition, allowing idempotent same-state updates.


Usage

``` python
validate_transition(
    source,
    target,
)
```


## Parameters


`source: LifecycleStatus`  
Current and requested lifecycle states.

`target: LifecycleStatus`  
Current and requested lifecycle states.


## Raises


`ValueError`  
If transition would move an entity backwards or out of [ARCHIVED](LifecycleStatus.md#recap.LifecycleStatus.ARCHIVED).
