Model libraries
The Model Libraries view in Data Refinery Studio provides a centralized interface for managing Construction Kit (CK) model libraries within a tenant. It shows all installed and available libraries, their versions, compatibility status, and provides tools for importing and updating libraries.
Accessing Model Libraries
Select Data > Model libraries in the rail. The header shows the number of models (for example "37 models").
Library Overview
The main view displays all known CK model libraries in a list, combining information from:
- Installed models in the current tenant (via GraphQL)
- Available models from configured catalog sources (via REST API)
Each library entry shows:
- Name — Click to open the Available Versions dialog
- Version — Installed version, and the newer catalog version if there is one (for example
v2.4.0 → v2.5.0 available) - Dependencies (installed) — The models the installed version depends on, with their versions
- State badge — Current status (see below)
- History — Opens the Migration History dialog: every installation and migration of the model with versions, time, result (OK) and duration
- Action button — Available action (see below)
State Badges
| Badge | Meaning |
|---|---|
| Available (green) | Model is installed and up to date |
| Unavailable (red) | Model has unresolved dependencies (ResolveFailed) |
| Importing (orange) | Model import is currently in progress |
| Not Installed (gray) | Model exists in catalog but is not installed |
| Service-Managed (violet) | Model is managed by OctoMesh services (System, System.Identity, etc.) |
| Incompatible (gray, with tooltip) | Model requires a different major version of a system model |
| Blocked (red, with tooltip) | The offered update would break an installed model, see Blocked updates |
Action Buttons
Only one action button is shown per model:
- Install — Model is not yet installed
- Fix — Model is installed but has
ResolveFailedstatus - Update — A newer compatible version is available in catalogs
- No button for service-managed or incompatible models
- For a Blocked model the Update (or Fix) button is shown disabled; its tooltip names the first reason
Blocked updates
A model is Blocked when importing the offered version would break another installed model, for example because EnergyCommunity.Registration-2.8.0 is pinned to Basic-2.4.0 and the update brings Basic-2.5.0. This is the tenant upgrade guard; Studio shows its result and never starts a blocked update. Studio has no force action: forcing a breaking update is an operation of the octo-cli and the API for data model managers.
A blocked row shows:
- the red Blocked badge next to the state badge; its tooltip carries the first reason
- the disabled Update or Fix button, with the same tooltip
- a Why? button that expands the list of blockers (Hide details collapses it again). Each blocker names the blocked model (the installed model that would break), the update that causes it, the pinned dependency, required range or element concerned, and, when the catalogs offer a newer version of the blocked model that resolves it, How to resolve (for example update EnergyCommunity.Registration to 2.10.0 first)
The header shows the number of blocked models, and the filter bar gets a Blocked (n) filter while there are blocked models. Update the blocked model first (the hint says to which version), then update the model that was blocked.
An older asset repository does not report blockers; the page then looks and works as before.
Filtering & Search
The filter bar at the top provides:
- Category filters: All, Installed, Not installed, Updates, New versions — each showing the count of matching models
- Text search: Filter by model name or version
- Blocked (n) filter: Appears when at least one offered update is blocked
- Fix all (n) button: Appears when models need action, with the number of models; opens the import dialog for all models at once. Blocked models are not part of it
- Refresh catalogs: Reloads the available models from the catalog sources
Versions Dialog
Click on a model name to open the dialog <model> - Available Versions. It shows:
- All versions available across catalogs, sorted newest first, each with the catalog it comes from (for example LocalFileSystemCatalog, PrivateGitHubCatalog)
- The currently installed version marked Installed
- An Install button per non-installed version
- Close to leave the dialog
- Click on a version to expand and see its full dependency tree (loaded on demand)
Import Dialog
When clicking Install, Update, Fix, or Fix All, the Import Dialog opens:
- Dependency tree — Shows all transitive dependencies with their status:
install(blue) — needs to be importedupdate(orange) — different version will be importednone(green) — already installed or service-managedincompatible(red) — requires incompatible system version
- Migration warning — If the import triggers a CK model migration, details are shown including breaking change indicators
- Import summary — Lists all models that will be imported as badges
- Incompatibility warning — If any transitive dependency is incompatible, the Import button is disabled with an explanation
- Blocked panel — If the models to import would break an installed model, the panel Blocked: this update would break installed models lists the blockers (see Blocked updates) and the Import button is disabled
- Import button — Shows the count of models to import; disabled if incompatible or blocked
After clicking Import, each model is imported sequentially via background jobs. A progress dialog tracks each job individually, showing the model name and progress counter (e.g., "Importing Industry.Basic-2.1.0 (1/2)").
Fix all
The Fix all (n) button in the filter bar:
- Resolves dependencies for all models needing action
- Opens the dialog Fix all: import summary with the combined dependency tree (each model with its dependencies and their status, for example
install (installed: v2.4.0)ornone) - Shows a summary of all models that will be imported
- After confirmation, imports all models in dependency order
Blocked models (see Blocked updates) are left out. After the click a notice n blocked models skipped by Fix all lists each skipped model with its reason; Dismiss closes it. If the combined import would still break an installed model, the dialog shows the blockers and its Import button stays disabled.
Import refused by the server
If an import is refused although the page offered it (for example because the page was open for a while and the tenant changed meanwhile), the dialog Update blocked opens instead of a generic error. It says that nothing was imported and lists the same blockers as the Why? panel. Close leaves it; the list is reloaded and shows the current state.