Custom app lifecycle
The Lifecycle
Transitions Explained
Apps organize custom categories from creation onward. Before archival, administrators must move any draft or active objects still placed there; restoration makes the app selectable again.
What Cannot Happen
App archival retains identity, and archived apps must be restored before replacement or placement.
Concurrency and Timing
Mutations use the current version. App archival locks its row exclusively, while placement reads it shared; one waits and then observes the other’s committed result.