Move worker management from the process Vuex module into a workers Pinia store
The process Vuex module is quite large, in part because of how workers grew increasingly complicated over time with the introduction of worker types, worker configurations, worker run IDs on ML results, etc. We can simplify this by moving Workers, WorkerVersions, WorkerConfigurations, WorkerTypes and WorkerRuns into a new Pinia store called useWorkerStore()
.
The processWorkerRuns
state should be changed so that it only stores an array of worker run UUIDs, acting like a foreign key to the existing workerRuns
state. This deduplicates the state and can remove some API requests. processWorkerRuns
can stay in the process
store, but workerRuns
will go into the new workers
store.