Open pcrespov opened 3 years ago
services/catalog/src/simcore_service_catalog/services/frontend_services.py
key=f"{FRONTEND_SERVICE_KEY_PREFIX}/data-iterator/number" as function
@KZzizzle says:
Just a couple of questions:
Are you committed to the term "snapshots"? The word to me is more related to "screenshot" than a version of the study. Something like "save version" and "All versions" and "save version as: version name" may be more intuitive and more in line with git vocabulary which can ease transitioning between the two.
If you have "unsnapshotted" changes and then you click on an older "snapshot" is there any kind of warning that your changes will be deleted? (I assume they will be deleted and not autosaved somehow)
@ignapas says:
Comments from a dumb user:
What are snapshots? What is their purpose? I am also with Katie in favor of calling them versions... and the user could browse the "version history"
I found it a bit annoying that it is mandatory to give them a name, and that it defaults to the study name (maybe make it default to an ISO timestamp new Date().toISOString() // "2021-08-30T15:30:23.536Z"
and assign it a name later on?) edit: I like the default name when no name is provided, but it has the problem of not updating if the user changes the name of the study (last element between []
)
When I open a snapshot then this one is available in the Dashboard with name <orig_name><snap_name>
should the user be able to delete and rename snapshots?
Some UX feedback
When WEBSERVER_DEV_FEATURES_ENABLED
is false
the Take Snapshot button is visible but the operation fails
This weird behavior
MINOR: Button disabled for empty studies?
The top bar is getting very crowded (see also Clusters in frontend #2517 (comment)). It may be close to a point where there needs to be some consolidation of study operations:
For the snapshots frontend:
Metamodeling starts with the parametrization of a project ...
A project is parametrized by adding param-nodes and connecting them to other service nodes. These param-nodes are basically data producers implemented as constants, iterator or cycle-evaluators.
⚗️ Parametrization Nodes (or param-node in short)
⚗️ Parametrized Project
⚗️ Project Versioning
Parametrized projects will lead to a substantial amount of "variants" of the starting "meta" project. This suggest that we need to implement a versioning system to track/identify all these variants. We follow an approach very similar to git because it is very familiar to us.
We can have: