Release Notes
CrossModel Professional v1.12.0
Upgraded 7 September 2026, 22:00 CET.
The hosted environment moved from v1.5.3 to v1.12.0. That covers seven releases, so this page collects everything you are likely to notice. Nothing you have modelled changes: existing workspaces, models and Git history open exactly as before.
Build target attributes by dragging
Mapping diagrams gained a Create Attribute tool. Drag one or more source attributes onto the target entity and CrossModel creates the matching target attributes and their mappings in a single gesture, instead of you creating each attribute by hand and then wiring it.
Where a name already exists on the target, an Attribute Name Conflict dialog lists every clash and lets you resolve them one at a time or in bulk: map to the existing attribute, create a new one, or skip it.
See Mapping Fundamentals.
Tidier diagrams
Two changes, one you ask for and one you simply get.
Routing points let you override an automatic route. Select a relationship line, drag the handle that appears at its midpoint, and the bend becomes a fixed point the line must pass through. Routing points are part of the model rather than a per-session view setting, so they are saved into the diagram file and your colleagues see the layout you arranged. Remove them with ++delete++, or with Remove All Routing Points from the line's context menu.
Edge routing has been rewritten. Lines are now straight wherever a straight line is possible, take fewer corners when they cannot be, and where several lines run together they are separated rather than drawn on top of each other. This is most obvious on mapping canvases with many attribute lines, which are considerably easier to read. Your existing routing points are honoured exactly as before.
See Datamodeling Fundamentals.
Large mappings open quickly
Opening a large mapping used to take tens of seconds and could stall while the diagram settled. A mapping with a thousand target attributes now opens in a few seconds, and its Form Editor tab appears immediately rather than after a pause. Diagram routing that previously took seconds on a busy canvas is now effectively instant.
AI assistant budget
The AI chat toolbar now shows what you have spent against your budget, turns red once you pass a threshold, and can notify you when you cross it. The budget is yours: each user's environment is provisioned with its own key rather than sharing one. The chat also reports how much of the context window a conversation is using.
Three settings control the indicator, under Settings:
| Setting | Default |
|---|---|
ai-features.chat.budgetUsageIndicator.enabled |
true |
ai-features.chat.budgetUsageWarning.enabled |
true |
ai-features.chat.budgetUsageWarning.defaultThresholdPercentage |
80 |
Property templates
A type definition can now derive a value rather than only supply a fixed one. Give a
definition a property template such as {{entity.name}} Key for name, and every instance that
adopts the definition and does not set its own name gets one worked out from its context.
Templates are available for name and description, and they travel down the extends chain,
so a child definition can override a parent's.
See Extending the Metamodel with Type Definitions.
Custom property data types
Custom properties gained a Unit field for Duration values, offering milliseconds through
years, so a retention period of 7 can say that it means years. The field is only enabled for
Duration.
Values are also checked against the data type they claim to be, and that checking now covers
UUID and Duration alongside the types already validated. A malformed UUID or a fractional
duration is reported in the Problems panel rather than being accepted silently. Note that a
value is re-checked against whichever type the field currently holds, so changing a property's
data type can surface an error about a value you entered earlier.
See Extending the Metamodel with Type Definitions.
Conceptual data models
You can now model at the conceptual tier: the things the business cares about and how they relate, before anyone decides how they are stored.
A conceptual model is an ordinary data model whose Type is Conceptual. Its entities carry a
name, a description and attributes, and deliberately no datatypes and no lengths, because a
datatype is a decision for the logical tier. Each logical entity can then record which concept it
implements through a Realizes field, so one agreed definition can be realised by many systems
and you can ask which.
Conceptual models are authored through the Model Explorer and the form editor. As of v1.12.0 there is no conceptual diagram; that is planned for a future release.
See Conceptual Modeling and A conceptual model linked to a logical one.
Changes to your session
These come from the hosting platform rather than the application, and all three are things you would have felt.
Sessions are no longer stopped while you are working
A running session could previously be stopped after four hours even if you were in the middle of using it, because activity was not being tracked. Activity is now tracked properly:
- A session you are actively using is never stopped, however long you work.
- An idle session warns you after 55 minutes and stops after 60. Both were shorter before, so a long meeting or lunch no longer costs you your session.
A stopped session is not lost work: your files live in the workspace, and starting it again brings them back. Note that a workspace you stop and start opens on the welcome page, whereas simply reloading a running session restores the editors you had open.
Commits carry your identity
Commits made from inside the workspace now use your name and email automatically. You no longer have to configure a Git identity by hand before your first commit.
See Git Provider Authentication.
More reliable sign-in
Signing in with a social account, such as Microsoft, could fail while username and password sign-in kept working. The cause has been fixed, and sign-in is now pinned to a single server for the whole exchange so a momentary hiccup cannot interrupt it.
Smaller fixes
| Fix | What you would have seen |
|---|---|
| Id uniqueness | A document could report that its own id was not unique |
| System diagrams | Nodes and edges could be given colliding ids |
| AI chat | Safer handling of the context and change-set views around unstaged changes |