flowchart user(user) --> |use| deployment configuration1 -->|deploy| deployed1 maintainers --> |maintain| fediversity fediversity --> |update| provider1 subgraph provider1["fediversity setup A"] subgraph configurations1[configurations] configuration1[staged configuration] configuration1 --> |update| configuration1 deployed1[deployed configuration] end deployed1 --> |describe| deployment provider-config[runtime config] --> |describe| host provider-config --> |implement runtime interfaces| configurations1 subgraph host[runtime environment] deployment[applications] state end end deployment --> |store| state operator(operator) --> |change| configuration1 subgraph provider2["fediversity setup B"] subgraph configurations2[configurations] configuration2[staged configuration] deployed2[deployed configuration] end subgraph host2[runtime environment] deployment2[applications] state2[state] end end operator --> |trigger| migration configurations1 & state --> migration migration --> configurations2 & state2 provider(hosting provider) --> |maintain| provider1 subgraph fediversity[fediversity source code] applications[application modules] backends[runtime backends] config[runtime options] end